1. 集合的用途:存储对象的一种容器
2. 数组和集合的区别:数组的长度是固定的,数组可以存储基本数据类型。集合只能存储对象,但是集合长度是可变的
3. 集合最顶层的接口Collection,常用子类有:List<E>,,Set<E>, SortedSet<E>
4. 子类的不同点:数据存储的方式(数据结构)不同
5. 集合(Collection)基本方法:
add(E e) 确保此 collection 包含指定的元素(可选操作)
addAll(Collection<? extendsE> c) 将指定 collection 中的所有元素都添加到此 collection 中(可选操作
clear() 移除此 collection 中的所有元素(可选操作)
contains(Object o) 如果此 collection 包含指定的元素,则返回 true
containsAll(Collection<?> c)
如果此 collection 包含指定 collection 中的所有元素,则返回 true
equals(Object o)
比较此 collection 与指定对象是否相等。
hashCode()
返回此 collection 的哈希码值。
isEmpty()
如果此 collection 不包含元素,则返回 true。
iterator()
返回在此 collection 的元素上进行迭代的迭代器。
remove(Object o)
从此 collection 中移除指定元素的单个实例,如果存在的话(可选操作
removeAll(Collection<?> c)
移除此 collection 中那些也包含在指定 collection 中的所有元素(可选操作)
retainAll(Collection<?> c)
仅保留此 collection 中那些也包含在指定 collection 的元素(可选操作)
size()
返回此 collection 中的元素数
toArray()
返回包含此 collection 中所有元素的数组
toArray(T[] a)
返回包含此 collection 中所有元素的数组;返回数组的运行时类型与指定数组的运行时类型相同
6. Iterator(接口),迭代器,集合取出元素的方式,集合内部类,每种集合都要自己的特有的数据操作方式,即Iterator实现类,方法有:
hasNext()
如果仍有元素可以迭代,则返回 true。
next()
返回迭代的下一个元素。
remove()
从迭代器指向的 collection 中移除迭代器返回的最后一个元素(可选操作)。
7.取元素操作:
List<String> list = new ArrayList<String>();
1. Iterator<String> it = list.iterator()
While( it.hasnext() ){
String value = It.next()
}
2.(可以及时释放it对象)
for(Iterator<String> it =list. iterator();it.hasnext;){
String value = It.next()
}