转自:https://www.cnblogs.com/yuexzh/p/7486264.html

HashMap,LinkedHashMap,TreeMap都属于Map

Map 主要用于存储键(key)值(value)对,根据键得到值,因此键不允许键重复,但允许值重复。

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

LinkedHashMap
LinkedHashMap也是一个HashMap,但是内部维持了一个双向链表,可以保持顺序

TreeMap 可以用于排序

HashMap的例子

public static void main(String[] args) {  Map<String, String> map = new HashMap<String, String>(); map.put("a3", "aa");map.put("a2", "bb"); map.put("b1", "cc");for (Iterator iterator = map.values().iterator(); iterator.hasNext();)     {String name = (String) iterator.next(); System.out.println(name);   }  }

输出:bbccaa

LinkedHashMap例子:

public static void main(String[] args) {   Map<String, String> map = new LinkedHashMap<String, String>();map.put("a3", "aa");       map.put("a2", "bb"); map.put("b1", "cc"); for (Iterator iterator = map.values().iterator(); iterator.hasNext();) {           String name = (String) iterator.next(); System.out.println(name);     }}

输出:
aa
bb
cc

总结归纳为:linkedMap在于存储数据你想保持进入的顺序与被取出的顺序一致的话,优先考虑LinkedMap,hashMap键只能允许为一条为空,value可以允许为多条为空,键唯一,但值可以多个。

经本人测试linkedMap键和值都不可以为空

HashMap和LinkedHashMap的区别相关推荐

  1. 深入理解HashMap和LinkedHashMap的区别

    文章目录 简介 LinkedHashMap详解 插入 访问 removeEldestEntry 总结 深入理解HashMap和LinkedHashMap的区别 简介 我们知道HashMap的变量顺序是 ...

  2. TreeMap、HashMap、LinkedHashMap的区别

    TreeMap.HashMap.LinkedHashMap的区别:

  3. Hashtable TreeMap HashMap LinkedHashMap的区别

    Hashtable TreeMap HashMap LinkedHashMap的区别 Hashtable TreeMap HashMap LinkedHashMap详解 Hashtable 1.内部存 ...

  4. 彻底理解HashMap及LinkedHashMap

    欢迎关注方志朋的博客,回复"666"获面试宝典 来源:https://blog.csdn.net/fuzhongmin05/article/details/104355841 Ha ...

  5. Java—Map集合详解(HashMap/Hashtable/LinkedHashMap/Properties/TreeMap/WeakHashMap/IdentityHashMap/EnumMap)

    关注微信公众号:CodingTechWork,一起学习进步. Map Map集合介绍   Map(也称为字典.关联数组)是用于保存具有映射关系的数据,保存两组值,key和value,这两组值可以是任何 ...

  6. 18.集合框架(Map集合,HashMap和Hashtable的区别,Collections(集合工具类),集合练习,模拟斗地主(洗牌,发牌,看牌))

    1.Map集合概述和特点 1.需求:    根据学号获取学生姓名 2.Map接口概述     查看API可以知道:     将键映射到值的对象     一个映射不能包含重复的键     每个键最多只能 ...

  7. java HashMap 与HashTable的区别

    HashMap 与HashTable的区别 HashMap与Hashtable的区别是面试中经常遇到的一个问题.这个问题看似简单,但如果深究进去,也能了解到不少知识.本文对两者从来源,特性,算法等多个 ...

  8. HashMap和HashSet的区别

    转自:http://www.importnew.com/6931.html HashMap和HashSet的区别是Java面试中最常被问到的问题.如果没有涉及到Collection框架以及多线程的面试 ...

  9. 【转】HashMap和HashSet的区别

    原文网址:http://www.importnew.com/6931.html HashMap和HashSet的区别是Java面试中最常被问到的问题.如果没有涉及到Collection框架以及多线程的 ...

最新文章

  1. SQL脚本--有关压缩数据库日志
  2. 美团某程序员哀叹:能力很强,却因为不会“向上管理”而惨遭被裁!怎么办?...
  3. IDEA-Java自动生成单元测试
  4. Centos7 nginx 虚拟主机、反向代理服务器及负载均衡,多台主机分离php-fpm实验
  5. poj 1164 The Castle
  6. 注入(一):APC注入
  7. 使用request对象进行数据传递
  8. 使用report clear appointment的all day flag
  9. Qt文件编码转换工具(二) C++判断文件编码
  10. rabbitmq direct 多个消费者_RabbitMQ实战应用技巧
  11. MindSpore:不用摘口罩也知道你是谁
  12. HoloLens开发手记-世界坐标系 Coordinate systems
  13. Windows11 配置 java 8.0 环境变量
  14. Subversion vs Subclipse
  15. java fup spring
  16. 手机版wps怎么制作折线图_wps怎么制作目录
  17. Cassandra Secondary Index 介绍
  18. Linux 用户权限(Centos 7)
  19. CSS基础-09-布局(定位 position、浮动float,元素对其、图像对其、文本对齐、元素内内容对齐,元素堆叠)
  20. Selenium switch_to方法

热门文章

  1. 抽象工廠與工廠方法的區別
  2. ZooKeeper演示案例
  3. Markdown常用语法汇总
  4. 22条API设计的最佳实践
  5. 33 张图详解 RSTP 、MSTP、替代技术
  6. 读写分离原来这么简单,一个小注解就够了
  7. 关于分布式多级缓存架构,也许你一直考虑的太简单了
  8. 面试官问一个数据表字段怎么表示多种业务含义?我愣了五分钟
  9. Redis做消息队列,香吗?
  10. Scrum 工件: 速度图和燃尽图