java集合的 添加、删除、修改、查询

子类

 1 public class KeCheng
 2 {
 3 
 4     public String id;//声明变量课程的id
 5     public String name;//声明变量课程的名称
 6     
 7     public KeCheng(String id,String name)
 8     {
 9         this.id=id;
10         this.name=name;
11         
12     }
13 }

实验类

 

 1 import java.lang.reflect.Array;
 2 import java.util.ArrayList;
 3 import java.util.Arrays;
 4 import java.util.Iterator;
 5 import java.util.List;
 6 
 7 public class Demo1
 8 {
 9 
10     public List kc;//声明对象kc属于list类型
11     
12     public Demo1()
13     {
14         this.kc=new ArrayList();//等价于List kc=new ArrayList();
15     }
16     public static void main(String[] args)
17     {
18         Demo1 demo1 =new Demo1();
19         demo1.add();//添加
20         demo1.show();//查阅
21         //demo1.delall();//删除
22         demo1.set();//修改
23         System.out.println("======删除、修改后======");
24         //demo1.zqshow();//查阅
25         demo1.itshow();//查阅
26     }
27 
28     //集合的添加:
29     public void add()
30     {
31         KeCheng k1=new KeCheng("1","书法鉴赏" );
32         KeCheng k2=new KeCheng("2","野外生存" );
33         KeCheng k3=new KeCheng("3","动漫欣赏" );
34         KeCheng[] k4={k1,k2};//创建数组,等价于KeCheng[] k4={new KeCheng("1","书法鉴赏" ),new KeCheng("2","野外生存" )}
35         kc.add(k1);//个体添加
36         kc.add(k2);
37         kc.add(0, k3);//个体规定位置添加,原集合往后顺延一位。
38         kc.addAll(Arrays.asList(k4));//数组的添加。数组,用类Arrays直接调取里面的静态asList方法,返回的是list类型。
39         kc.addAll(0, Arrays.asList(k4));//数组规定位置的添加。原集合往后顺延。
40     }
41     
42     //查阅集合内容:for循环
43     public void show()
44     {
45         for (int i = 0; i < kc.size(); i++)
46         {
47             KeCheng k=(KeCheng) kc.get(i);//用kc.get(下标)调取集合里类的对象,强转为类的类型,
48             System.out.println(k.id+"、"+k.name);//用类的对象调取类的属性。
49         }
50     }
51     
52     //查阅集合内容:增强for循环
53     public void zqshow()
54     {
55         for (Object obj : kc)
56         {
57             KeCheng k1=(KeCheng) obj;//用增强for循环遍历出集合里类的对象,强转为类的类型,
58             System.out.println(k1.id+"、"+k1.name);//用类的对象调取类的属性。
59         }
60     }
61     
62     //查阅集合内容:集合提供的Iterator
63     
64     public void itshow()
65     {
66         Iterator it=kc.iterator();//必须有这一步!如果直接写成kc.iterator().hasNext(),则无线循环打印第一个。
67         while (it.hasNext())//用上面对象it调取Iterator的方法.   
68         {
69              KeCheng it1 = (KeCheng) it.next();//用上面对象it调取Iterator的方法. 遍历出集合里类的对象,强转为类的类型。
70              System.out.println(it1.id+"、"+it1.name);//用类的对象调取类的属性。
71         }
72     }
73     
74     //修改set
75     public void set()
76     {
77         kc.set(0, new KeCheng("2","野外生存" ));//new一个新的对象,替换指定位置的对象。
78     }
79     
80     //删除 remove
81     
82     public void del()
83     {
84         KeCheng k2=(KeCheng) kc.get(6);//只能删除从集合例调取的对象!而不是new一个新的对象!!!
85         kc.remove(k2);//不论上述调取的对象在哪位置,只能删除集合里第一个出现的此对象。
86     }
87     
88     //删除 removeall
89     
90     public void delall()
91     {
92         KeCheng[] k2={(KeCheng) kc.get(5),(KeCheng) kc.get(6)};//只能删除从集合例调取的对象!而不是new一个新的对象!!!
93         kc.removeAll(Arrays.asList(k2));//集合里所有的调取对象都会删除!!!
94     }
95     
96     
97 }

 

posted @ 2016-09-02 18:11  朕射你有罪  阅读(11330)  评论(0编辑  收藏  举报