hashMap、hashTable、treeMap的区别

一、hashTable是线程安全的、hashMap不是线程安全的安全

hashmap数据结构

线程不安全spa

容许有null的键和值线程

效率高一点、code

方法不是Synchronize的要提供外同步排序

有containsvalue和containsKey方法继承

HashMap 是Java1.2 引进的Map interface 的一个实现ci

HashMap是Hashtable的轻量级实现同步

hashtablehash

线程安全

不容许有null的键和值

效率稍低、

方法是是Synchronize的

有contains方法方法

、Hashtable 继承于Dictionary 类

Hashtable 比HashMap 要旧

 二、HashMap经过hashcode对其内容进行快速查找,而 TreeMap中全部的元素都保持着某种固定的顺序,若是你须要获得一个有序的结果你就应该使用TreeMap(HashMap中元素的排列顺序是不固定的)。

  HashMap:适用于在Map中插入、删除和定位元素。

  Treemap:适用于按天然顺序或自定义顺序遍历键(key)。

  HashMap一般比TreeMap快一点(树和哈希表的数据结构使然),建议多使用HashMap,在须要排序的Map时候才用TreeMap。

相关文章
相关标签/搜索