常用List集合初始化方式
1. 先創建List再賦值
標準方式,先創建集合對象,然後逐個調用add方法初始化。用起來比較繁瑣,不太方便!
List<Integer> list = new ArrayList();
list.add(1);
list.add(2);
list.add(3);
2. 使用雙大括號初始化
使用匿名內部類完成初始化。外層的{}定義了一個ArrayList的匿名內部類,內層的{}定義了一個實例初始化代碼塊。有內存泄漏的風險!
List<Integer> list = new ArrayList<>() {{
add(1);
add(2);
add(3);
}};
3. 使用Arrays.asList
使用Arrays的靜態方法asList初始化。返回的list集合是不可變的!
List<Integer> list = Arrays.asList(1,2,3);
4. 使用Stream(JDK8以上)
使用JDK8引入的Stream的of方法生成一個stream對象,調用collect方法進行收集,形成一個List集合。
List<Integer> list = Stream.of(1,2,3).collect(Collectors.toList());
5. 使用Google+Guava工具集Lists(需要引入Guava工具包)
藉助Google Guava工具集中的Lists工具類初始化。需要引入Guava包才能用!
List<Integer> list = Lists.newArrayList(1, 2, 3);
6. 使用Lists(JDK9以上)
使用JDK9引入的Lists完成初始化。
List<Integer> list = Lists.of(1, 2, 3);