蔡香满屋
站在牛顿头上吃苹果

1、HashMap 初始化的初级写法

HashMap 是一种常用的数据结构,一般用来做数据字典或者 Hash 查找的容器。初级工程师一般会这么初始化:
HashMap<String, String> map = new HashMap<String, String>();
map.put("name", "test");  
map.put("age", "30");


看完这段代码,很多人都会觉得这么写太啰嗦了,高级一点这么写:
HashMap<String, String> map = new HashMap<String, String>() {
    {
        put("name", "test");  
        put("age", "30"); 
    }
};

代码解读:这里的双括号”{{}}”到底什么意思,什么用法呢?
首先知道作用是:双括号”{{}}”,用来初始化,使代码简洁易读。
机制:第一层括弧实际是定义了一个匿名内部类 (Anonymous Inner Class),第二层括弧实际上是一个实例初始化块 (instance initializer block),这个块在内部匿名类构造时被执行。

posted on 2019-08-20 18:08  蔡香满屋  阅读(5986)  评论(0)    收藏  举报