zoukankan      html  css  js  c++  java
  • HashTable HashMap TreeMap LinkedHashMap 区别

    参考:http://blog.csdn.net/xiaodifa995455120/article/details/7277441

    http://www.apkbus.com/forum.php?mod=viewthread&tid=52426

    Hashmap 是一个 最常用的Map,它根据键的HashCode 值存储数据,根据键可以直接获取它的值,具有很快的访问速度。
    HashMap最多只允许一条记录的键为Null;允许多条记录的值为Null;HashMap不支持线程的同步,即任一时刻可以有多个线程同时写HashMap;可能会导致数据的不一致。如果需要同步,可以用Collections的synchronizedMap方法使HashMap具有同步的能力.用synchronized修饰操作HashMap的语句块或方法

    如:

     Map systemUsers = Collections.synchronizedMap(new HashMap());
    

    HashTable 它不允许记录的键或者值为空;它支持线程的同步,速度比较慢。

    TreeMap能够把它保存的记录根据键排序,默认是按升序排序,也可以指定排序的比较器,当用Iterator 遍历TreeMap时,得到的记录是排过序的,它不允许记录的键或者值为空。运用:http://my.oschina.net/liyuanjinglyj/blog/126539   key值 实现Comparable 后  加入后自动排序 ,iterater 读取时 有顺序。

    LinkedHashMap LinkedHashMap,键和值可以为null,可以使插入的顺序,在用Iterator遍历LinkedHashMap时,先得到的记录肯定是先插入的.在遍历的时候会比HashMap慢。

  • 相关阅读:
    数据库中导入json数据
    EntityFrameWork Core创建数据库并且使用
    AutoMapper自动映射框架的使用(一)
    值类型和引用类型
    Windows10家庭版安装docker
    Manjaro Linux系统安装
    STM32之USMART的简单介绍
    DSP28335笔记
    张飞第二部:直流无刷电机 直流电源 电感 热水循环泵系统
    高输入阻抗 低输出阻抗 的意义
  • 原文地址:https://www.cnblogs.com/wjw334/p/4433088.html
Copyright © 2011-2022 走看看