目录
[使用List.of()方法初始化(Java 9及以上版本)](#使用List.of()方法初始化(Java 9及以上版本))
[使用Collections.singletonMap()方法初始化(创建只包含一个键值对的不可变 Map)](#使用Collections.singletonMap()方法初始化(创建只包含一个键值对的不可变 Map))
[使用双括号初始化(Double Brace Initialization)](#使用双括号初始化(Double Brace Initialization))
[使用Map.of()方法初始化(Java 9及以上版本,创建只包含有限个键值对的不可变 Map)](#使用Map.of()方法初始化(Java 9及以上版本,创建只包含有限个键值对的不可变 Map))
[使用Stream的collect()方法初始化(通过收集器生成 Map)](#使用Stream的collect()方法初始化(通过收集器生成 Map))
[使用Map.entry()方法初始化(Java 9及以上版本,创建只包含一个键值对的不可变 Map)](#使用Map.entry()方法初始化(Java 9及以上版本,创建只包含一个键值对的不可变 Map))
List初始化方法
使用ArrayList的构造方法初始化
java
List<String> list1 = new ArrayList<>();
使用Arrays.asList()方法初始化
java
List<String> list2 = Arrays.asList("a", "b", "c");
使用Collections.addAll()方法初始化:
java
List<String> list3 = new ArrayList<>();
Collections.addAll(list3, "a", "b", "c");
使用List.of()方法初始化(Java 9及以上版本)
java
List<String> list4 = List.of("a", "b", "c");
使用Stream的collect()方法初始化
java
List<String> list5 = Stream.of("a", "b", "c").collect(Collectors.toList());
java
List<String> list6 = new ArrayList<>() {{
add("a");
add("b");
add("c");
}};
Map的初始化方法
使用HashMap的构造方法初始化
java
Map<String, Integer> map1 = new HashMap<>();
使用Collections.singletonMap()方法初始化(创建只包含一个键值对的不可变 Map)
java
Map<String, Integer> map2 = Collections.singletonMap("key", 1);
使用双括号初始化(Double Brace Initialization)
java
Map<String, Integer> map3 = new HashMap<>() {{
put("key1", 1);
put("key2", 2);
// 可以连续添加多个键值对
}};
使用Map.of()方法初始化(Java 9及以上版本,创建只包含有限个键值对的不可变 Map)
java
Map<String, Integer> map4 = Map.of("key1", 1, "key2", 2);
使用Stream的collect()方法初始化(通过收集器生成 Map)
java
Map<String, Integer> map5 = Stream.of(
new AbstractMap.SimpleEntry<>("key1", 1),
new AbstractMap.SimpleEntry<>("key2", 2)
).collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue));
使用Map.entry()方法初始化(Java 9及以上版本,创建只包含一个键值对的不可变 Map)
java
Map<String, Integer> map6 = Map.entry("key", 1);
以上是一些常见的 Map 集合初始化方法,每种方法都有其适用的场景和特点,根据实际需求选择合适的方法即可。