在初始化Map和List时,可以手动指定其容量,然后按照匿名内部类这种方式初始化数据,代码看起来会很清爽.
- List<String> list = new ArrayList<String>(2) {{
- add("1");
- add("2");
- }};
- Map<String, Object> map = new HashMap<String, Object>(2) {{
- put("key1", "obj1");
- put("key2", "obj2");
- }};
在已经知道容量大小的情况下, 指定容量会减小开销.
外层“{}”创建了一个匿名子类,内层“{}”创建了一个对象构造块.