Map容器大小影响key的索引

news/2024/9/9 13:17:55

单元测试偶然发现的Map一个问题

        Map<String,String> map1 = new HashMap<>();map1.put("aaa", "foo");map1.put("bbb", "bar");map1.put("ccc", "foobar");System.out.println(map1); // {aaa=foo, ccc=foobar, bbb=bar}Map<String,String> map2 = new HashMap<>(map1);assertEquals(map1.values().toArray(new String[]{}), map2.values().toArray(new String[]{}));System.out.println(map2); // {aaa=foo, ccc=foobar, bbb=bar}Map<String,String> map3 = new HashMap<>(3); //显式指定了大小map3.putAll(map1);System.out.println(map3); // {bbb=bar, ccc=foobar, aaa=foo}assertEquals(map1.values().toArray(new String[]{}), map3.values().toArray(new String[]{})); // 判等失败

可见如果显式指定了map容器大小 会影响key的索引。如下所示

默认大小

图片描述
图片描述
图片描述

keyindex
aaa3
ccc10
bbb14

显式指定了大小3

图片描述
图片描述
图片描述

keyindex
aaa3
ccc2
bbb2

http://lihuaxi.xjx100.cn/news/243863.html

相关文章

如何挑选靠谱的Java培训机构

想要学习java技术的人越来越多&#xff0c;市面上出现的java培训机构也越来越多&#xff0c;很多人都想找一个靠谱的java培训机构&#xff0c;那么到底该如何挑选靠谱的Java培训机构呢?看看下面小编为大家做的详细介绍吧。 如何挑选靠谱的Java培训机构? 首先挑选java培训机…

R 语言 用途 与优势

&#xff08;1&#xff09;R 语言主要用来 对 数据进行统计分析 &#xff08;2&#xff09;R语言可以针对数据 进行绘图 其高级功能如下 R语言饼图图表R语言条形图(柱状图)R语言箱线图R语言柱状图R语言线型图R语言散点图R语言均值,中位数和模式R语言线性回归R语言多元回归R语言…

创建mysql数据库,在新数据库中创建表,再尝试删除表

创建之前&#xff0c;先登录数据库存 mysql -u 账号 -p密码 登录完成后&#xff0c;展示一下已存在的数据库 show databases; 创建数据库 create database test111; 然后展示一下数据库&#xff0c;如下 show databases; 使用数据库 use test; 在test数据库里面看一下已存在的…

带monkey的测流量!

为什么80%的码农都做不了架构师&#xff1f;>>> //public static void flow(){ //String command1 "adb shell monkey -p com.netease.newsreader.activity -s 500 -v 2000"; //String command2 "adb shell ps"; //String str"com.nete…

如何选择合适的Python培训机构

最近学习Python技术的人越来越多&#xff0c;很多人会选择报Python培训班学习&#xff0c;尤其是零基础学员&#xff0c;但是想好好学习python的话不是随随便便就参加一个培训机构就行了的&#xff0c;要好好挑选。下面小编就说说如何选择合适的Python培训机构。 如何选择合适…

编译安装apr 1.5.2 时报 rm: cannot remove `libtoolT': No such file or directory

今天在编译安装apr-1.5.2 的时候执行./configure --prefix/usr/local/apr 的时候报了一个这么样的信息“ rm: cannot remove libtoolT: No such file or directory”&#xff0c;详细如下图&#xff1a;解决过程&#xff1a;1、网上看了一下&#xff0c;有很多人使用如下三个命…

session,cookie,sessionStorage,localStorage的区别及应用场景

浏览器的缓存机制提供了可以将用户数据存储在客户端上的方式&#xff0c;可以利用cookie,session等跟服务端进行数据交互。 一、cookie和session cookie和session都是用来跟踪浏览器用户身份的会话方式。 区别&#xff1a; 1、保持状态&#xff1a;cookie保存在浏览器端&#x…

手动配置lnmp环境

做php开发的&#xff0c;想要进一步提升自己&#xff0c;手动搭建开发环境&#xff0c;我想是必须经历的一个坎。虽然说有很多第三方集成环境可供使用&#xff0c;但我想说的是在你没有自己搭建过一次环境的时候&#xff0c;你没有太多的资本去“偷懒”。虽然我自己也是个菜鸟&…