1.Hashtable、Hashmap、Treemap、LinkedHashmap四种集合,以键值对存储和操做数据。安全
2.Hashtable和Hashmap的比较
(1)Hashtable是Java类库提供的一个哈希实现,支持同步的,不支持null键和null值,不多使用。
(2)HashMap是应用更加普遍的哈希表实现,不支持同步,支持null键和null值。
(3)二者都是基于拉链法实现的,都是散列表。线程
3.Hashmap和Treemap的比较
(1)HashMap经过hashcode对其内容进行快速查找,而TreeMap中全部的元素都保持着某种固定的顺序。
(2)HashMap非线程安全;TreeMap非线程安全。
(3)HashMap基于哈希表实现。使用HashMap要求添加的键类明肯定义了hashCode()和equals()[能够重写hashCode()和equals()]。
(4)TreeMap,基于红黑树实现,总处于平衡状态。
(5)HashMap适用于在Map中插入、删除和定位元素;Treemap适用于按天然顺序或自定义顺序遍历键(key)。code
4.LinkedHashMap是HashMap的一个子类,若是须要输出的顺序和输入的相同,那么用LinkedHashMap能够实现。同步