HashMap和LinkedHashMap的区别
转自: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的区别相关推荐
- 深入理解HashMap和LinkedHashMap的区别
文章目录 简介 LinkedHashMap详解 插入 访问 removeEldestEntry 总结 深入理解HashMap和LinkedHashMap的区别 简介 我们知道HashMap的变量顺序是 ...
- TreeMap、HashMap、LinkedHashMap的区别
TreeMap.HashMap.LinkedHashMap的区别:
- Hashtable TreeMap HashMap LinkedHashMap的区别
Hashtable TreeMap HashMap LinkedHashMap的区别 Hashtable TreeMap HashMap LinkedHashMap详解 Hashtable 1.内部存 ...
- 彻底理解HashMap及LinkedHashMap
欢迎关注方志朋的博客,回复"666"获面试宝典 来源:https://blog.csdn.net/fuzhongmin05/article/details/104355841 Ha ...
- Java—Map集合详解(HashMap/Hashtable/LinkedHashMap/Properties/TreeMap/WeakHashMap/IdentityHashMap/EnumMap)
关注微信公众号:CodingTechWork,一起学习进步. Map Map集合介绍 Map(也称为字典.关联数组)是用于保存具有映射关系的数据,保存两组值,key和value,这两组值可以是任何 ...
- 18.集合框架(Map集合,HashMap和Hashtable的区别,Collections(集合工具类),集合练习,模拟斗地主(洗牌,发牌,看牌))
1.Map集合概述和特点 1.需求: 根据学号获取学生姓名 2.Map接口概述 查看API可以知道: 将键映射到值的对象 一个映射不能包含重复的键 每个键最多只能 ...
- java HashMap 与HashTable的区别
HashMap 与HashTable的区别 HashMap与Hashtable的区别是面试中经常遇到的一个问题.这个问题看似简单,但如果深究进去,也能了解到不少知识.本文对两者从来源,特性,算法等多个 ...
- HashMap和HashSet的区别
转自:http://www.importnew.com/6931.html HashMap和HashSet的区别是Java面试中最常被问到的问题.如果没有涉及到Collection框架以及多线程的面试 ...
- 【转】HashMap和HashSet的区别
原文网址:http://www.importnew.com/6931.html HashMap和HashSet的区别是Java面试中最常被问到的问题.如果没有涉及到Collection框架以及多线程的 ...
最新文章
- SQL脚本--有关压缩数据库日志
- 美团某程序员哀叹:能力很强,却因为不会“向上管理”而惨遭被裁!怎么办?...
- IDEA-Java自动生成单元测试
- Centos7 nginx 虚拟主机、反向代理服务器及负载均衡,多台主机分离php-fpm实验
- poj 1164 The Castle
- 注入(一):APC注入
- 使用request对象进行数据传递
- 使用report clear appointment的all day flag
- Qt文件编码转换工具(二) C++判断文件编码
- rabbitmq direct 多个消费者_RabbitMQ实战应用技巧
- MindSpore:不用摘口罩也知道你是谁
- HoloLens开发手记-世界坐标系 Coordinate systems
- Windows11 配置 java 8.0 环境变量
- Subversion vs Subclipse
- java fup spring
- 手机版wps怎么制作折线图_wps怎么制作目录
- Cassandra Secondary Index 介绍
- Linux 用户权限(Centos 7)
- CSS基础-09-布局(定位 position、浮动float,元素对其、图像对其、文本对齐、元素内内容对齐,元素堆叠)
- Selenium switch_to方法