一、简介
-
提到集合就不得不提一下数组,好多集合底层都是依赖于数组的实现。
-
数组一旦初始化后,长度就确定了,存储数据对象不能达到动态扩展,其次数组存储元素不便于对数组进行
添加
、修改
、删除
操作,而且数组可以存储重复元素
。 -
这个时候集合对作用显现出来了。
集合
分为Collection
和Map
两种体系。 -
Collection
接口(java.util.Collection)
是Java
集合类的顶级接口之一,整个集合框架就围绕一组标准接口而设计。 -
Collection
的集合类的继承树:
二、简单使用
```
import java.util.ArrayList;
import java.util.Collection;
public class test {
public static void main(String[] args) {
// 创建 Collection 集合对象
Collection<String> c = new ArrayList<String>();
// boolean add(E e): 添加元素
c.add("dzm");
c.add("xyq");
System.out.println(c); // [dzm, xyq]
// boolean remove(Object o): 移除元素
c.remove("dzm");
System.out.println(c); // [xyq]
// void clear(): 清空集合中的元素
c.clear();
System.out.println(c); // []
// 判断集合中是否存在指定的元素
c.add("dzm");
System.out.println(c.contains("dzm")); // true
// 判断集合是否为空
System.out.println(c.isEmpty()); // false
// 获取集合中的元素个数
System.out.println(c.size()); // 1
}
}
```
三、迭代器(Iterator
)
-
Iterator<E> iterator()
: 返回此集合中元素的迭代器,通过集合的iterator()
方法得到,它是依赖于集合而存在的。import java.util.ArrayList; import java.util.Collection; import java.util.Iterator; public class test { public static void main(String[] args) { // 创建 Collection 集合对象 Collection<String> c = new ArrayList<String>(); // 添加元素 c.add("dzm"); c.add("xyq"); System.out.println(c); // [dzm, xyq] // 获得迭代器 Iterator<String> it = c.iterator(); // 返回迭代器中的下一个元素 // System.out.println(it.next()); // dzm // System.out.println(it.next()); // xyq // System.out.println(it.next()); // 因为只有2个元素,所以回报异常 Exception in thread "main" java.util.NoSuchElementException // 判断迭代器是否还有更多的元素 // if (it.hasNext()) { System.out.println(it.next()); } // dzm // if (it.hasNext()) { System.out.println(it.next()); } // xyq // if (it.hasNext()) { System.out.println(it.next()); } // 不会输出,因为没有更多元素了 // 便利迭代器中的元素 while (it.hasNext()) { System.out.println(it.next()); } } }