当前位置: 首页 > 范文大全 > 工作总结 >

Java初始化 [Java如何创建和初始化一个HashMap?洛克王国机械动力泵]

作者: | 发布时间:2019-10-17 07:26:03 | 浏览次数:

摘要:如何创建和初始化一个HashMap,看似简单的问题,其实真的挺简单的,但我们希望从多种方法中,选择一个最简洁方便、可读性也高的方法。 代码块初始化 可以使用静态代码块和非静

如何创建和初始化一个HashMap,120821强心脏,看似简单的问题,天津酷文字聊天,其实真的挺简单的,但我们希望从多种方法中,选择一个最简洁方便、可读性也高的方法。

代码块初始化

可以使用静态代码块和非静态代码块,都可以进行初始化,要针对变量是否是静态变量来选择。

private static Map<String, String map;{ map = new HashMap<(); map.put("name", "pumpkin"); map.put("location", "Guangzhou");}双大括号初始化Map<String, String map = new HashMap<String, String() {{ put("name", "pumpkin"); put("sex", "M");}};assertEquals("pumpkin", map.get("name"));

虽然这是一种可行的办法,但并不认可这种方法,铁血道光,具体原因可阅读公众号之前的文章。

使用JAVA集合工具类Collectionsmap = Collections.emptyMap();map = Collections.singletonMap("name", "pumpkin");assertEquals("pumpkin", map.get("name"));

需要注意的是,暧昧法则txt下载,这产生的是不可变的Map。

使用Java 8 Stream的方法map = Stream.of( new AbstractMap.SimpleEntry<("name", "Pumpkin"), new AbstractMap.SimpleEntry<("age", "18")) .collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue));assertEquals("Pumpkin", map.get("name"));

也可以用Stream生成不可变的Map,如下:

map = Stream.of( new AbstractMap.SimpleEntry<("name", "Pumpkin"), new AbstractMap.SimpleEntry<("age", "18")) .collect(Collectors.collectingAndThen( Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue), Collections::unmodifiableMap ));使用Guava库

Guava库应该大多数Java开发都知道,它是Google开源的类库,刘苏曼近况,里面有许多非常方便的工具与类。

map = ImmutableMap.of("key1", "value1", "key2", "value2");map = Maps.newHashMap(map);

以上两行代码分别生成不可变的Map和可变的Map。

总结

本文介绍了生成空的Map,只有一个Entry的Map;可变的Map和不可变的Map。大家可根据自己的需求自行选择。

Java 9对这块有比较大的改进,有兴趣的同学就自行研究吧。

Java必修课】如何创建和初始化一个HashMap?

推荐访问:

本文标题:Java初始化 [Java如何创建和初始化一个HashMap?洛克王国机械动力泵]
链接地址:http://www.jnyqy1.com/fanwendaquan/gongzuozongjie/2019/1017/68511.html

版权声明:
1.钰江范文网的资料来自互联网以及用户的投稿,用于非商业性学习目的免费阅览。
2.《Java初始化 [Java如何创建和初始化一个HashMap?洛克王国机械动力泵] 》一文的著作权归原作者所有,仅供学习参考,转载或引用时请保留版权信息。
3.如果本网所转载内容不慎侵犯了您的权益,请联系我们,我们将会及时删除。

钰江范文网 |
Copyright © 2018-2024 钰江范文网 Inc. All Rights Reserved.钰江范文网 版权所有
本站部分资源和信息来源于互联网,如有侵犯您的权益,请尽快联系我们进行处理,谢谢!