1、集合和数组的区别?
①、长度区别:数组长度固定;集合长度可变。
②、内容区别:数组存储的是同一类型的元素;集合可以存储不同类型的元素。
③、元素的数据类型区别:数组可以存储基本类型数据,也可以存储引用类型数据;集合只能存储引用类型数据。
2、集合的集成体系:
Collection
|-----List
|-----ArrayList
|-----Vector
|-----LinkedList
|-----Set
|-----HashSet
|-----TreeSet
3、Collection、List、Set都是抽象接口,所以不能实例化对象;只能使用它们的子类实例化对象。
4、Collection接口的成员方法:
添加功能:
boolean add(Object obj):添加一个元素。
boolean addAll(Collection c):添加一个集合的元素。
删除功能:
void clear():移除所有元素。
boolean remove(Object obj):移除一个元素。
boolean removeAll(Collection c):移除一个集合的元素。[只要指定集合中的元素有一个被删除了,就返回true]
判断功能:
boolean contains(Object obj):判断集合中是否包含指定的元素。
boolean containsAll(Collection c):判断集合中是否包含指定的集合的元素。[只有包含指定集合的所有元素,才返回true]
boolean isEmpty():判断集合是否为空。
获取功能:
Iterator iterator():获取集合的迭代器。[集合的专有遍历方式]
长度功能:
int size():元素的个数。
交集功能:
boolean retainAll(Collection c):集合是否和指定的集合有交集。[A对B做交集,最终的结果保存在A中,B不变,返回值表示A是否改变]
集合转数组功能:
Object[] toArray():集合转为数组返回。[可以实现集合的遍历]