Java中List与Map初始化的一些写法分享


当然,我可以分享一些Java中List和Map初始化的简洁写法。

### List的初始化

#### 使用Arrays.asList(适用于静态数据)


List<String> list = Arrays.asList("apple", "banana", "cherry");

注意:`Arrays.asList`返回的List是固定大小的,不支持添加或删除元素。

#### 使用Collections.emptyList(空列表)


List<String> emptyList = Collections.emptyList();

#### 使用Java 9的List.of(适用于静态数据,不可变)


List<String> list = List.of("apple", "banana", "cherry");

#### 使用ArrayList的构造函数


List<String> list = new ArrayList<>(Arrays.asList("apple", "banana", "cherry"));

这种方式创建的List是可变的。

### Map的初始化

#### 使用Collections.emptyMap(空Map)


Map<String, Integer> emptyMap = Collections.emptyMap();

#### 使用HashMap的构造函数


Map<String, Integer> map = new HashMap<>();
map.put("apple", 100);
map.put("banana", 200);

#### 使用Java 9的Map.of(适用于静态键值对,不可变)


Map<String, Integer> map = Map.of("apple", 100, "banana", 200);

#### 使用Map.ofEntries(Java 16及以上,适用于多个键值对,不可变)


Map<String, Integer> map = Map.ofEntries(
    Map.entry("apple", 100),
    Map.entry("banana", 200)
);

或者使用静态导入`Map.entry`来简化代码:


import static java.util.Map.entry;

Map<String, Integer> map = Map.ofEntries(
    entry("apple", 100),
    entry("banana", 200)
);

以上就是在Java中List和Map初始化的几种简洁写法。希望对你有所帮助!