1 import java.util.*;
2
3 /*
4 Collection定义了集合框架的共性功能。
5 1,添加
6 add(e);
7 addAll(collection);
8
9 2,删除
10 remove(e);
11 removeAll(collection);
12 clear();
13
14 3,判断。
15 contains(e);
16 isEmpty();
17
18 4,获取
19 iterator();
20 size();
21
22 5,获取交集。
23 retainAll();
24
25 6,集合变数组。
26 toArray();
27
28
29
30 1,add方法的参数类型是Object。以便于接收任意类型对象。
31
32 2,集合中存储的都是对象的引用(地址)
33
34
35 什么是迭代器呢?
36 其实就是集合的取出元素的方式。
37 如同抓娃娃游戏机中的夹子。
38
39 迭代器是取出方式,会直接访问集合中的元素。
40 所以将迭代器通过内部类的形式来进行描述。
41 通过容器的iterator()方法获取该内部类的对象。
42
43 把取出方式定义在集合的内部,取出方式就可以直接访问集合内部的元素。
44
45 取出方式就定义了内部类。
46 每个容器的数据结构不同,所以取出的动作细节也不一样,但都有共性内容:判断和取出。
47 就可以将共性抽取。
48 这些内部类都符合一个规则:Iterator.
49 如何获取集合的取出对象呢?
50 通过一个对外提供的方法:iterator();
51
52
53 */
54 class CollectionDemo
55 {
56 public static void main(String[] args)
57 {
58
59 method_get();
60 }
61 public static void method_get()
62 {
63 ArrayList al = new ArrayList();
64
65 //1,添加元素。
66 al.add("java01");//add(Object obj);
67 al.add("java02");
68 al.add("java03");
69 al.add("java04");
70
71 /*
72 Iterator it = al.iterator();//获取迭代器,用于取出集合中的元素。
73
74 while(it.hasNext())
75 {
76 sop(it.next());
77 }
78 */
79
80 for(Iterator it = al.iterator(); it.hasNext() ; )
81 {
82 sop(it.next());
83 }
84 }
85
86
87 public static void method_2()
88 {
89 ArrayList al1 = new ArrayList();
90
91 al1.add("java01");
92 al1.add("java02");
93 al1.add("java03");
94 al1.add("java04");
95 ArrayList al2 = new ArrayList();
96
97 al2.add("java03");
98 al2.add("java04");
99 al2.add("java05");
100 al2.add("java06");
101
102
103 //al1.retainAll(al2);//去交集,al1中只会保留和al2中相同的元素。
104 al1.removeAll(al2);
105
106 sop("al1:"+al1);
107 sop("al2:"+al2);
108
109
110
111
112 }
113
114 public static void base_method()
115 {
116 //创建一个集合容器。使用Collection接口的子类。ArrayList
117 ArrayList al = new ArrayList();
118
119 //1,添加元素。
120 al.add("java01");//add(Object obj);
121 al.add("java02");
122 al.add("java03");
123 al.add("java04");
124
125 //打印原集合。
126 sop("原集合:"+al);
127
128
129 //3,删除元素。
130 //al.remove("java02");
131 //al.clear();//清空集合。
132
133
134 //4,判断元素。
135 sop("java03是否存在:"+al.contains("java03"));
136 sop("集合是否为空?"+al.isEmpty());
137
138
139 //2,获取个数。集合长度。
140 sop("size:"+al.size());
141
142 //打印改变后的集合。
143 sop(al);
144
145 }
146
147 public static void sop(Object obj)
148 {
149 System.out.println(obj);
150 }
151 }