集合
- Java 集合就像一种容器,可以动态地把多个对象的引用放入容器中。
- Java 集合可分为 Collection 和 Map 两种体系
Collection接口
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200119123831698.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L25pbXd3ZGE=,size_16,color_FFFFFF,t_70)
- Collection 接口是 List、 Set 和 Queue 接口的父接口,该接口里定义的方法既可用于操作 Set 集合,也可用于操作 List 和 Queue 集合。
- Collection接口: 单列数据, 定义了存取一组对象的方法的集合
List: 元素有序、可重复的集合
Set: 元素无序、不可重复的集合
Collection 接口方法
- 添加
add(Object obj)
addAll(Collection coll)
- 获取有效元素的个数
int size()
- 清空集合
void clear()
- 是否是空集合
boolean isEmpty()
- 是否包含某个元素
boolean contains(Object obj): 是通过元素的equals方法来判断是否是同一个对象
boolean containsAll(Collection c): 也是调用元素的equals方法来比较的。 拿两个集合的元素挨个比较。
- 删除
boolean remove(Object obj) : 通过元素的equals方法判断是否是要删除的那个元素。 只会删除找到的第一个元素
boolean removeAll(Collection coll): 取当前集合的差集
- 取两个集合的交集
boolean retainAll(Collection c): 把交集的结果存在当前集合中,不影响c
- 集合是否相等
boolean equals(Object obj)
- 转成对象数组
Object[] toArray()
- 获取集合对象的哈希值
hashCode()
- 遍历
iterator(): 返回迭代器对象,用于集合遍历
Iterator迭代器接口
- 使用 Iterator 接口遍历集合元素
Iterator对象称为迭代器(设计模式的一种),主要用于遍历 Collection 集合中的元素。
- Iterator 仅用于遍历集合, Iterator 本身并不提供承装对象的能力。如果需要创建Iterator 对象,则必须有一个被迭代的集合。
- 集合对象每次调用iterator()方法都得到一个全新的迭代器对象,默认游标都在集合的第一个元素之前。
/hasNext():判断是否还有下一个元素
while(iterator.hasNext()){
System.out.println(iterator.next());
}
Iterator iter = coll.iterator();
while(iter.hasNext()){
Object obj = iter.next();
if(obj.equ