Java集合类总结
集合类
集合类分Collections和Map,两种。
Collections
Collections又分为List和Set。其中List有ArrayList、Vector、LinkedList三种实现。
List
ü ArrayList
长度增长方式为原有容量1.5倍+1。
ü Vector
实现方法与ArrayList基本相同,也是用数组实现的。实现里加上了syschnoized,所以同ArrayList比较,它是线程安全的。长度增长方式为capacity +capacityIncrement ,其中capacityIncrement 可以设置默认为上一次的一倍。
ü LinkedList
链表实现。
Set
ü HashSet
该类实际上是由HashMap实现的。
ü TreeSet
ü LinkedHashSet
Map
HashMap
该方法不是线程安全。HashMap的数据结构可以概括为一句话:链表加数组。 也就是其最常见的一种实现方式,拉链法。 // 存储时: int hash = key.hashCode(); int index = hash % Entry[].length; Entry[index] = value; // 取值时: int hash = key.hashCode(); int index = hash % Entry[].length; return Entry[index];
TreeMap
实现SortMap接口,能够把它保存的记录根据键排序,默认是按键值的升序排序
LinkedHashMap
HashMap的链表实现方式