HashMap优雅的初始化方式以及引申
Posted 小杜比亚
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HashMap优雅的初始化方式以及引申相关的知识,希望对你有一定的参考价值。
小记
相信很多人和笔者一样,经常会做一些数组的初始化工作,也肯定会经常用到集合类。假如我现在要初始化一个String类型的数组,可以很方便的使用如下代码:
String [] strs = {"Tom","Jack"};
但是我相信很多人在初始化HashMap的时候是使用如下的方式:
Map<String, Object> map = new HashMap<String, Object>(); map.put("name", "June"); map.put("age", 12);
上面这段代码个人觉得略显啰嗦,其实还有另外一种优雅的初始化方式:
Map<String, Object> map = new HashMap<String, Object>() { { put("name", "June"); put("age", 12); } };
这边有必要说清楚两个大括号表示的是啥意思,是一种什么语法呢?其实,外层的一组“{}”表示的是一个匿名类,内层的一对“{}”表示的是实例初始化块,然后这边还有一点需要明白,实例初始化块的代码在编译器编译过后,是放在类的构造函数里面的,并且是在原构造函数代码的前面。
以上是关于HashMap优雅的初始化方式以及引申的主要内容,如果未能解决你的问题,请参考以下文章