• hashMap、hashTable、treeMap的区别


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

    hashmap

    线程不安全

    允许有null的键和值

    效率高一点、

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

    有containsvalue和containsKey方法

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

    HashMap是Hashtable的轻量级实现

    hashtable

    线程安全

    不允许有null的键和值

    效率稍低、

    方法是是Synchronize的

    有contains方法方法

    、Hashtable 继承于Dictionary 类

    Hashtable 比HashMap 要旧

     2、HashMap通过hashcode对其内容进行快速查找,而 TreeMap中所有的元素都保持着某种固定的顺序,如果你需要得到一个有序的结果你就应该使用TreeMap(HashMap中元素的排列顺序是不固定的)。

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

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

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

  • 相关阅读:
    设计模式-享元模式
    设计模式-外观模式
    设计模式-桥接模式
    设计模式-适配器模式
    设计模式-代理模式
    java设计模式中用到的UML图
    VS code 初次安装配置
    CMD部分操作、BAT、以及VS SQL部分快捷键
    网络部分
    CMD 中certutil 操作命令
  • 原文地址:https://www.cnblogs.com/tengpan-cn/p/5909395.html
Copyright © 2020-2023  润新知