每日一学之java常见初始化集合list的方式
1,使用Guava 工具包下的 Lists.newArrayList 创建的集合
示例:
public class MyStudy1017_02 {
public static void main(String[] args) {
ArrayList<Integer> integers = Lists.newArrayList(1, 2, 3);
integers.add(3);
System.out.println(integers);
}
}
输出结果:
[1, 2, 3, 3]
Process finished with exit code 0
从输出结果可以发现,Lists.newArrayList创造出来的集合是可变的。
2,还是Guava 工具包,使用 ImmutableList.of 创建只读集合
示例:
import com.google.common.collect.ImmutableList;
public class MyStudy1017_02 {
public static void main(String[] args) {
ImmutableList<String> al = ImmutableList.of("AA", "BB", "VV");
System.out.println(al);
}
}
输出结果:
[AA, BB, VV]
Process finished with exit code 0
3,使用工具类Arrays.asList创建不可变集合
示例:
public class MyStudy1017_02 {
public static void main(String[] args) {
List<String> strings = Arrays.asList("AA", "BB", "VV");
System.out.println(strings);
}
}
输出结果:
[AA, BB, VV]
Process finished with exit code 0
以上两种可通过重新定义集合对象变成可写集合,
示例:
public class MyStudy1017_02 {
public static void main(String[] args) {
List<String> strings = Arrays.asList("AA", "BB", "VV");
ArrayList<String> strings1 = new ArrayList<>(strings);
strings1.add("CCC");
System.out.println(strings1);
}
}
输出:[AA, BB, VV, CCC]
4,使用工具类Collections.nCopies
List<String> dao = Collections.nCopies(4, "dao");
System.out.println(dao);
输出:[dao, dao, dao, dao]