若撰写程序时不知道究竟需要多少对象,需要在空间不足时自动扩增容量,则需要使用容器类库,array不适用。
1、Collection 和 Map 的区别
容器内每个为之所存储的元素个数不同。
Collection类型者,每个位置只有一个元素。
Map类型者,持有 key-value pair,像个小型数据库。
2、各自旗下的子类关系
Collection --List: 将以特定次序存储元素。所以取出来的顺序可能和放入顺序不同。
–ArrayList / LinkedList / Vector --Set : 不能含有重复的元素
–HashSet / TreeSet
Map
–HashMap
–HashTable
–TreeMap
3、其他特征
-
List,Set,Map将持有对象一律视为Object型别。
-
Collection、List、Set、Map都是接口,不能实例化。
继承自它们的 ArrayList, Vector, HashTable, HashMap是具象class,这些才可被实例化。
- vector容器确切知道它所持有的对象隶属什么型别。vector不进行边界检查。