java 有序的Map LinkedHashMap简介
无序的HashMap
我们知道HashMap是无需的,数据并不是按我们插入的顺序排序的,我们可以验证下
public class Test6 {public static void main(String[] args) {Map<String, String> hashMap = new HashMap<String, String>();hashMap.put("name1", "value1");hashMap.put("name2", "value2");hashMap.put("name3", "value3");Set<Entry<String, String>> set = hashMap.entrySet();Iterator<Entry<String, String>> iterator = set.iterator();while(iterator.hasNext()) {Entry<String, String> entry = iterator.next();String key = (String) entry.getKey();String value = (String) entry.getValue();System.out.println("key:" + key + ", value:" + value);}}
}
可以看到输出结果并不是按数据插入的顺序的
key:name3, value:value3
key:name2, value:value2
key:name1, value:value1
有序的LinkedHashMap
要想实现有序的Map,我们可以用LinkedHashMap,下面验证一下,把原来代码的HashMap替换成LinkedHashMap
public class Test6 {public static void main(String[] args) {Map<String, String> hashMap = new LinkedHashMap<String, String>();hashMap.put("name1", "value1");hashMap.put("name2", "value2");hashMap.put("name3", "value3");Set<Entry<String, String>> set = hashMap.entrySet();Iterator<Entry<String, String>> iterator = set.iterator();while(iterator.hasNext()) {Entry<String, String> entry = iterator.next();String key = (String) entry.getKey();String value = (String) entry.getValue();System.out.println("key:" + key + ", value:" + value);}}
}
可以看到输出结果为我们插入的顺序
key:name1, value:value1
key:name2, value:value2
key:name3, value:value3
java 有序的Map LinkedHashMap简介相关推荐
- 有序的map LinkedHashMap
HashMap是无序的,HashMap在put的时候是根据key的hashcode进行hash然后放入对应的地方.所以在按照一定顺序put进HashMap中,然后遍历出HashMap的顺序跟put的顺 ...
- 【java】关于Map的排序性的一次使用,有序的Map
关于Map的排序性的一次使用,有序的Map >>>>> hashmap是按key的hash码排序的,而treemap是利用comparator 进行key的自然排序的 / ...
- Java中Set Map List 的区别
java中set map list的区别: 都是集合接口 简要说明 set --其中的值不允许重复,无序的数据结构 list --其中的值允许重复,因为其为有序的数据结构 map--成对的数据结构 ...
- Java集合总结Map篇
Map Map是一个接口属于键值对的总接口,也就是集合的另一个大阵营. 其派生的类包括AbstractMap.HashMap.Hashtable.IdentityHashMap.LinkedHashM ...
- Java 8 中 Map 骚操作之 merge() 的用法
点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 来源 | juejin.im/post/5d9b455a ...
- (7)Java数据结构--集合map,set,list详解
MAP,SET,LIST,等JAVA中集合解析(了解) - clam_clam的专栏 - CSDN博---有颜色, http://blog.csdn.net/clam_clam/article/det ...
- Java集合框架:LinkedHashMap
欢迎支持笔者新作:<深入理解Kafka:核心设计与实践原理>和<RabbitMQ实战指南>,同时欢迎关注笔者的微信公众号:朱小厮的博客. 欢迎跳转到本文的原文链接:https: ...
- java map中套map_Java Map – Java中的Map
java map中套map Java Map is part of collections framework. Java Map object is used to store key-value ...
- JAVA中的Map集合
JAVA中的Map集合 1.Map简介 java.util.map接口 1.Map称为查找表,该数据结构的样子是一个"多行两列"的表格,左列为key,右列为value,Map总是根 ...
最新文章
- HTTP 2.0与OkHttp
- c语言运动会成绩统计报告,C语言程序设计运动会成绩统计系统1研究报告.doc
- 在对人的管理上,项目经理应该做些什么?
- 每天一道LeetCode-----顺时针旋转n×n矩阵90度
- linux如何卸载virtualbox,如何在Mac上卸载VirtualBox | MOS86
- JS操作iframe里的dom
- Jquery 关于span标签的取值赋值用法
- 受疫情影响:中国智能手机市场Q1出货量下滑严重
- 基于 Docker 中的 MongoDB 授权使用
- 记忆测试系统c语言,c语言重点回忆
- C语言实现socket网络编程及多线程编程
- 支持IE8的文件上传
- 8051蜂鸣器程序c语言,蜂鸣器报警声C51程序
- 智方8000系文具进销存管理系统 v11.27 bt
- 通往诺贝尔奖之路:盘点10个著名的科学家族
- 网站建设开发策划书应该怎么写?
- 他是程序员出身,如今身价上亿!一人干出了美国版的:携程、安居客、看准网!...
- java早餐点餐外卖网站系统
- 第17天 命令行窗口
- 因为工资补贴邮件被划空银行卡?搜狐全体员工被诈骗始末