1 /**
2 * - **集合**:集合是java中提供的一种容器,可以用来存储多个数据。
3 *
4 * 集合和数组既然都是容器,它们有啥区别呢?
5 *
6 * - 数组的长度是固定的。集合的长度是可变的。
7 * - 数组中存储的是同一类型的元素,可以存储基本数据类型值。集合存储的都是对象。而且对象的类型可以不一致。在开发中一般当对象多的时候,使用集合进行存储。
8 * */
Collection<String> coll = new ArrayList<>();
coll.add("小李广");
coll.add("扫地僧");
coll.add("石破天");
System.out.println(coll);
System.out.println(coll.contains("扫地僧"));
coll.remove("小李广");
System.out.println(coll);
System.out.println(coll.size());
Object[] objects = coll.toArray();
for (int i = 0; i <objects.length ; i++) {
System.out.println(objects[i]);
}
coll.clear();
System.out.println(coll);
System.out.println(coll.isEmpty());
1 /**
2 * - **迭代**:即Collection集合元素的通用获取方式。在取元素之前先要判断集合中有没有元素,如果有,就把这个元素取出来,继续在判断,如果还有就再取出出来。一直把集合中的所有元素全部取出。这种取出方式专业术语称为迭代。
3 *
4 * Iterator接口的常用方法如下:
5 *
6 * - `public E next()`:返回迭代的下一个元素。
7 * - `public boolean hasNext()`:如果仍有元素可以迭代,则返回 true。
8 * */
9
10 public static void main(String[] args) {
11 /**
12 * Iterator迭代器对象在遍历集合时,内部采用指针的方式来跟踪集合中的元素,为了让初学者能更好地理解迭代器的工作原理,接下来通过一个图例来演示Iterator对象迭代元素的过程:
13 *
14 * 
15 *
16 * 在调用Iterator的next方法之前,迭代器的索引位于第一个元素之前,不指向任何元素,
17 * 当第一次调用迭代器的next方法后,迭代器的索引会向后移动一位,指向第一个元素并将该元素返回,
18 * 当再次调用next方法时,迭代器的索引会指向第二个元素并将该元素返回,依此类推,直到hasNext方法返回false,表示到达了集合的末尾,终止对元素的遍历。
19 * */
20 Collection<String> coll = new ArrayList<>();
21
22 coll.add("传唤");
23 coll.add("网线");
24
25 Iterator<String> it = coll.iterator();
26 while (it.hasNext()){
27 String next = it.next();
28 System.out.println(next);
29 }
30 }
/**
* 增强for循环(也称for each循环)是**JDK1.5**以后出来的一个高级for循环,专门用来遍历数组和集合的。它的内部原理其实是个Iterator迭代器,所以在遍历的过程中,不能对集合中的元素进行增删操作。
*
* 格式:
*
* ```java
* for(元素的数据类型 变量 : Collection集合or数组){
* //写操作代码
* }
* ```
*
* 它用于遍历Collection和数组。通常只进行遍历元素,不要在遍历的过程中对集合元素进行增删操作。
* */
public static void main(String[] args) {
int[] array = {13, 23, 32, 3214, 4213};
for(int a : array){
System.out.println(a);
}
}