无序的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简介相关推荐

  1. 有序的map LinkedHashMap

    HashMap是无序的,HashMap在put的时候是根据key的hashcode进行hash然后放入对应的地方.所以在按照一定顺序put进HashMap中,然后遍历出HashMap的顺序跟put的顺 ...

  2. 【java】关于Map的排序性的一次使用,有序的Map

    关于Map的排序性的一次使用,有序的Map >>>>> hashmap是按key的hash码排序的,而treemap是利用comparator 进行key的自然排序的 / ...

  3. Java中Set Map List 的区别

    java中set map list的区别: 都是集合接口 简要说明 set --其中的值不允许重复,无序的数据结构 list   --其中的值允许重复,因为其为有序的数据结构 map--成对的数据结构 ...

  4. Java集合总结Map篇

    Map Map是一个接口属于键值对的总接口,也就是集合的另一个大阵营. 其派生的类包括AbstractMap.HashMap.Hashtable.IdentityHashMap.LinkedHashM ...

  5. Java 8 中 Map 骚操作之 merge() 的用法

    点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 来源 | juejin.im/post/5d9b455a ...

  6. (7)Java数据结构--集合map,set,list详解

    MAP,SET,LIST,等JAVA中集合解析(了解) - clam_clam的专栏 - CSDN博---有颜色, http://blog.csdn.net/clam_clam/article/det ...

  7. Java集合框架:LinkedHashMap

    欢迎支持笔者新作:<深入理解Kafka:核心设计与实践原理>和<RabbitMQ实战指南>,同时欢迎关注笔者的微信公众号:朱小厮的博客. 欢迎跳转到本文的原文链接:https: ...

  8. 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 ...

  9. JAVA中的Map集合

    JAVA中的Map集合 1.Map简介 java.util.map接口 1.Map称为查找表,该数据结构的样子是一个"多行两列"的表格,左列为key,右列为value,Map总是根 ...

最新文章

  1. HTTP 2.0与OkHttp
  2. c语言运动会成绩统计报告,C语言程序设计运动会成绩统计系统1研究报告.doc
  3. 在对人的管理上,项目经理应该做些什么?
  4. 每天一道LeetCode-----顺时针旋转n×n矩阵90度
  5. linux如何卸载virtualbox,如何在Mac上卸载VirtualBox | MOS86
  6. JS操作iframe里的dom
  7. Jquery 关于span标签的取值赋值用法
  8. 受疫情影响:中国智能手机市场Q1出货量下滑严重
  9. 基于 Docker 中的 MongoDB 授权使用
  10. 记忆测试系统c语言,c语言重点回忆
  11. C语言实现socket网络编程及多线程编程
  12. 支持IE8的文件上传
  13. 8051蜂鸣器程序c语言,蜂鸣器报警声C51程序
  14. 智方8000系文具进销存管理系统 v11.27 bt
  15. 通往诺贝尔奖之路:盘点10个著名的科学家族
  16. 网站建设开发策划书应该怎么写?
  17. 他是程序员出身,如今身价上亿!一人干出了美国版的:携程、安居客、看准网!...
  18. java早餐点餐外卖网站系统
  19. 第17天 命令行窗口
  20. 因为工资补贴邮件被划空银行卡?搜狐全体员工被诈骗始末

热门文章

  1. 《乐高EV3机器人搭建与编程》一2.3 球头万向轮
  2. mysql表分区(partition)
  3. 前端工程化及函数式编程
  4. Excel-HLOOKUP函数匹配查找②
  5. 何时用put,get,post
  6. 通过联网问题的解决看singress.exe应用程序
  7. VUE页面转pdf下载
  8. 爬虫反爬机制及反爬策略
  9. 高通看门狗驱动-MSM Watchdog
  10. python 运行程序代码_一些python程序