Advertisement

(JAVA高级特性)第一章 集合框架

阅读量:

1,创建一个类Queue,代表队列(特点:先进先出),添加add(Object obj)及get()方法,mian()方法验证。

复制代码
 package com.bdqn.demo;

    
  
    
 import java.util.ArrayList;
    
 import java.util.LinkedList;
    
 import java.util.List;
    
 import java.util.NoSuchElementException;
    
  
    
 public class Queue {
    
 	private List<Object> arrayList = new ArrayList<Object>();
    
     private LinkedList<Object> linkedList = new LinkedList<Object>();
    
  
    
     //ArrayList实现的先进先出
    
     public void arrayListAdd(Object obj) {
    
     this.arrayList.add(obj);
    
     }
    
  
    
     public Object arrayListGet() {
    
     Object obj = null;
    
     if (this.arrayList.size() > 0) {
    
         obj = this.arrayList.get(0);
    
         this.arrayList.remove(0);
    
     }
    
     return obj;
    
     }
    
  
    
     //LinkedList实现的先进先出
    
     public void linkedListAdd(Object obj) {
    
     this.linkedList.addFirst(obj);
    
     }
    
      
    
     @SuppressWarnings("finally")
    
     public Object linkedListGet(){
    
     Object obj = null;
    
     try {
    
         obj = this.linkedList.getLast();
    
         this.linkedList.removeLast();
    
     } catch (NoSuchElementException e) {
    
     }finally{
    
         return obj;
    
     }
    
     }
    
      
    
     public static void main(String[] args) {
    
     Queue queue = new Queue();
    
     //测试ArrayList,添加0 1 2进去
    
     for (int i = 0; i < 3; i++){
    
         System.out.println("arrayListAdd("+i+")");
    
         queue.arrayListAdd(i);
    
     }
    
     //输出4次,第4次应该为null,输出顺序和放入顺序一致
    
     for (int i = 0; i < 4; i++) {
    
         System.out.println("arrayListGet()=="+queue.arrayListGet());
    
     }
    
      
    
     //测试Linkedlist,添加0 1 2进去
    
     for (int i = 0; i < 3; i++){
    
         System.out.println("linkedListAdd("+i+")");
    
         queue.linkedListAdd(i);
    
     }
    
     //输出4次,第4次应该为null,输出顺序和放入顺序一致
    
     for (int i = 0; i < 4; i++) {
    
         System.out.println("linkedListGet()=="+queue.linkedListGet());
    
     }
    
     }
    
 }

2,创建一个HashMap类,添加学员姓名及分数,键为学生姓名,值为分数。从HashMap对象获取并输出,修改一位同学的成绩,再次输出。

复制代码
复制代码
 package com.bdqn.demo;

    
  
    
 public class Student {
    
      private String name;//学生姓名
    
      private int score;//分数
    
      public Student( String name,int score) {//重载接收参数
    
     	 this.name=name;
    
     	 this.score=score;
    
      }
    
 	public String getName() {//获取名字
    
 		return name;
    
 	}
    
 	public int getScore() {//获取分数
    
 		return score;
    
 	}
    
      
    
 }
    
  
    
 package com.bdqn.demo;
    
  
    
 import java.util.HashMap;
    
 import java.util.Iterator;
    
 import java.util.Map;
    
 import java.util.Set;
    
  
    
 //测试类
    
 public class Test {
    
     public static void main(String[] args) {
    
     	//学生参数传递
    
     	Student stu1=new Student("张三", 99);
    
     	Student stu2=new Student("李四", 80);
    
     	Student stu3=new Student("王五", 86);
    
     	Student stu4=new Student("赵六", 72);
    
 		Map <String,Student>score=new HashMap<String,Student>();//声明HashMap
    
 		//添加学生参数集合
    
 		score.put(stu1.getName(),stu1);
    
 		score.put(stu2.getName(),stu2);
    
 		score.put(stu3.getName(),stu3);
    
 		score.put(stu4.getName(),stu4);
    
     for(String key:score.keySet()) {//foreach打印
    
     	System.out.println(key+"\t"+score.get(key).getScore());
    
     }
    
 	     stu4=new Student("赵六",76);//修改一名学生成绩
    
 	     score.put(stu4.getName(), stu4);//添加修改的数据
    
 	     System.out.println("修改后的学员成绩如下:");//打印修改后的学生成绩
    
 	     for(String key:score.keySet()) {
    
 	        	System.out.println(key+"\t"+score.get(key).getScore());
    
 	        }
    
 		}
    
 	
    
 	
    
 }

全部评论 (0)

还没有任何评论哟~