LinkedHashMap 与 HashMap区别

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

LinkedHashMap 与 HashMap区别 (非原创)

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键和值都不可以为空

转载于:https://my.oschina.net/u/3717819/blog/1924102

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/282556.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C# 11 中的 file local type

C# 11 中的 file local typeIntro在之前的版本中&#xff0c;我们想要一个类型只在当前的类型中生效&#xff0c;通常我们会在一个类的内部声明一个 private 的类型以此来控制这个类型的访问权限&#xff0c;在 C# 11 中引入了一个 file local type&#xff0c;仅在声明类型的这…

PHP实现类似百度搜索自动完成(代码简单)

一、效果图: 二、HTML代码 <html lang"en"> <head><meta charset"utf-8"><title>jQuery UI 自动完成&#xff08;Autocomplete&#xff09; - 默认功能</title><link rel"stylesheet" href"/public/Auto…

Mysql读写分离php脚本

<?php/*php如何连接mysql*/ /*$link mysql_connect(‘localhost‘, ‘root‘, ‘‘);if (!$link) {die(‘Could not connect: ‘ . mysql_error());}echo ‘Connected successfully‘;mysql_close($link);*/ /*php如何选择数据库*//*$link mysql_connect(‘localhost‘, …

CentOS 搭建Postfix+Dovecot简单邮件系统

2019独角兽企业重金招聘Python工程师标准>>> 服务器信息 系统&#xff1a;CentOS 6.5 minimal版本 主机&#xff1a;虚拟机 虚拟机IP&#xff1a;192.168.128.128/24 宿主IP:10.1.79.24/24 安装postfix 注意&#xff1a;CentOS 7实际上已经用postfixSasl2代替sendma…

Js获取当前页面URL各种参数

JS获取当前页面URL各种参数 一&#xff1a;Location Location 对象包含有关当前 URL 的信息。 Location 对象是 Window 对象的一个部分&#xff0c;可通过 window.location 属性来访问。 hash设置或返回从井号 (#) 开始的 URL&#xff08;锚&#xff09;。host设置或返回主机名…

php面试题2018

一 、PHP基础部分 1、PHP语言的一大优势是跨平台&#xff0c;什么是跨平台&#xff1f; PHP的运行环境最优搭配为ApacheMySQLPHP&#xff0c;此运行环境可以在不同操作系统&#xff08;例如windows、Linux等&#xff09;上配置&#xff0c;不受操作系统的限制&#xff0c;所以…

学生党的专属定制福利,你想要的这里全都有!

同学们&#xff1a;您好&#xff01;很⾼兴认识⼤家&#xff01;我是微软的 Regional Cloud Advocate Kinfey Lo&#xff0c;感谢您在课余时间打开这封信。踏⼊⾦秋&#xff0c;技术峰会进⼊了旺季&#xff0c;有⾯向商业的&#xff0c;有⾯向开发者的&#xff0c;有⾯向技术社…

Quartus prime16.0 与modelsim ae 联调

前言 quartus和modelsim联调对仿真还是很方便的&#xff0c;当然最好是quartus干综合到烧录的活&#xff0c;modelsim单独仿真。而且ae版的性能比se版差。 流程&#xff1a; 1.配置modelsim ae路径&#xff1a; 我这里是这个路径&#xff0c;根据你自己安装的地方配置路径。 2.…

30分钟搞定后台登录界面(103个后台PSD源文件、素材网站)

去年八月时要做一个OA系统为了后台界面而烦恼&#xff0c;后来写了一篇博客&#xff08;《后台管理UI的选择》&#xff09;介绍了选择过程与常用后台UI&#xff0c;令我想不到的时竟然有许多开发者与我一样都为这个事情而花费不少时间&#xff0c;最后界面效果还是不佳&#xf…

分析拼多多的崛起【产品思维】

最近朋友圈讨论拼多多上市的新闻大火&#xff0c;各有各的看法&#xff0c;很有意思&#xff0c;突然想起前段时间得到上的《梁宁-产品思维30讲》&#xff0c;所以想从数据和产品角度分析分析拼多多的崛起。 一&#xff1a;拼多多的迅速崛起 我们先看看拼多多这几年的成长历程&…

62、滑动窗口的最大值

一、题目 给定一个数组和滑动窗口的大小&#xff0c;找出所有滑动窗口里数值的最大值。例如&#xff0c;如果输入数组{2,3,4,2,6,2,5,1}及滑动窗口的大小3&#xff0c;那么一共存在6个滑动窗口&#xff0c;他们的最大值分别为{4,4,6,6,6,5}&#xff1b; 针对数组{2,3,4,2,6,2,5…

KestrelServer详解[2]: 网络连接是如何创建的?

《KestrelServer详解[1]&#xff1a;注册监听终结点&#xff08;Endpoint&#xff09;》已经详细讲述了如何使用KestrelServer&#xff0c;现在我们来简单聊聊这种服务器的总体设计和实现原理。当KestrelServer启动的时候&#xff0c;注册的每个终结点将转换成对应的“连接监听…

PHP操作文件和目录的相关函数

//判断文件类型 filetype(a.php);//打开或创建文件 fopen(a.php,w);//读取文件 fgets(a.php);//按行读取 fread(a.php,1049);//按块读取 file_get_contents(a.php);//读取文件//复制文件 copy(a.php,./b.php);//将a.php复制到b.php//删除文件 unlink(b.php);//移动文件 rename(…

linux LyX中文编辑环境安装配置指南-TeX可视化工具

TeX可以说是国际上排版的标准&#xff0c;尤其是论文、书籍之类&#xff0c;对公式的表现比MS办公系列强的太多&#xff0c;格式异常优美&#xff0c;但是由于其比较复杂的命令&#xff0c;非可视化编辑&#xff0c;所以使得入门门槛较高&#xff0c;所以出现了LaTeX这样的命令…

pandas DataFrame 数据处理常用操作

Xgboost调参&#xff1a; https://wuhuhu800.github.io/2018/02/28/XGboost_param_share/ https://blog.csdn.net/hx2017/article/details/78064362 pandas DataFrame中的空值处理&#xff1a; https://blog.csdn.net/yuanxiang01/article/details/78738812 pandas的DataFrame、…

redis集群报Jedis does not support password protected Redis Cluster configurations异常解决办法...

解决spring-data-redis操作redis集群报“Jedis does not support password protected Redis Cluster configurations”的异常 原因&#xff1a;使用spring-data-redis操作redis集群时由于redis集群设置了密码。 解决方案&#xff1a;升级spring-data-redis版本即可解决&#xf…

支付宝支付开发流程

支付宝开发流程1、首先我们先谈谈第三方支付所谓第三方支付就是和一些各大银行签约&#xff0c;并具备一定实力和信誉保障的第三方独立机构提供的交易平台目前市面上常见的有支付宝&#xff0c;财付通&#xff0c;网银&#xff0c;易宝支付等&#xff0c;网站需要实现第三方支付…

MQ消息队列之MSMQ

主要参考文章&#xff1a; 消息队列&#xff08;Message Queue&#xff09;简介及其使用 转载于:https://www.cnblogs.com/mailaidedt/p/6599130.html

css选择器总结

一.选择器 1. css1选择器 2.css2选择器 3.css3选择器 4.:nth-of-type(n)和:nth-child(n)区别 (1).在不指定类型时&#xff0c;nth-child(n)选中的是父元素下的第N个子元素。nth-of-type(n)选中的是父元素下的不同类型标签的第N个。(2).在指定具体元素时,ele:nth-child(n)要求不…

Hypercrx:开源项目不只有Star

01战队简介大家好&#xff0c;我们是Hypercrx战队&#xff0c;非常荣幸获得了首届Microsoft Edge浏览器开拓者大赛的一等奖&#xff01;我是队长唐烨男&#xff08;中&#xff09;&#xff0c;位于我左侧的是宁志成&#xff0c;右侧的是林以任&#xff0c;我们都来自华东师范大…