第六章 集合
Collection接口定义了存取一组对象的方法,其接口Set和List分别定义了存储方式:
Set中的数据对象没有顺序且不可以重复
List中数据对象没有顺序且可以重复
Map接口定义了存储键(key)———值(Value)映射对的方法
Collection常用方法举例
add(E e)
确保此 collection 包含指定的元素(可选操作)。
clear()
移除此 collection 中的所有元素(可选操作)。
contains(Object o)
如果此 collection 包含指定的元素,则返回 true。
equals(Object o)
比较此 collection 与指定对象是否相等。
hashCode()
返回此 collection 的哈希码值。
iterator()
返回在此 collection 的元素上进行迭代的迭代器。
remove(Object o)
从此 collection 中移除指定元素的单个实例,如果存在的话(可选操作)。
retainAll(Collection<?> c)
仅保留此 collection 中那些也包含在指定 collection 的元素(可选操作)。
toArray()
返回包含此 collection 中所有元素的数组
ArrayList和LinkedList的区别
ArrayList:底层是数组结构,所以查询块,修改、删除、插入慢
LinkeList:底层是链表结构,查询慢,修改、删除、插入快。
Vector:与ArrayList结构一样,区别是:线程安全的,效率低。Map接口
1. 实现Map接口的类用来存储键值对。
2. Map接口实现类有HashMap和TreeMap
3. Map类中存储的键值对通过键来标识,所以键值不能重复
Hashcode是一种编码方式,hashtable实现了一种无序的元素排列
对象相等则hashCode一定相等
hashCode相等对象未必相等