Map
- 逐个初始化
java8及以前
Map<Character, Integer> map = new HashMap<Character, Integer>(){{put('+', 1);put('-', 1);put('*', 2);put('/', 2);}};
java9新特性
//此方法生成的map为不可变类型Map<String, String> map = Map.of("a", "b","c", "d");
Set
java5及之前
使用另一个Collection类实例
Set<String> set = new HashSet<>(Arrays.asList("a", "b", "c"));
使用匿名类
//相当于一个Set类的实现类内用了一个初始化块Set<Character> set = new HashSet<>(){{add('a');add('e');add('i');add('o');add('u');}};
java8
Set<Character> set = new HashSet<>();Collections.addAll(set, 'a', 'e', 'i', 'o', 'u');
java9
//Java9支持!此方法生成的set不可变!Set<Character> set = Set.of('a', 'e', 'i', 'o', 'u');
