1.常规操作
List<Double> list=new ArrayList<>();
list.add(32.5);
list.add(78.3);
list.add(45.6);
这是比较常用的方式,一项项添加比较麻烦。
2.Arrays工具类
List<Double> list1=Arrays.asList(32.5,78.3,45.6);
System.out.println(list1);
//输出结果为[32.5, 78.3, 45.6]
【注】asList是Arrays的静态方法。这种方式构造除的List是固定长度的,如果调用上述的add方法增加新的元素,会报异常java.lang.UnsupportedOperationException。适用于构造静态不变的List.
但是可以通过ArrayList进行包装,就可以添加新的元素。
List<Double> list1=new ArrayList<>(Arrays.asList(32.5,78.3,45.6));
list1.add(56.6);
System.out.println(list1);
[32.5, 78.3, 45.6, 56.6]
3.java8引入的Stream提供的方法
List<Double> data = Stream.of(56.3, 3.64, 4.65).collect(toList());
System.out.println(data);
可以动态添加元素,比较nice.
4.Collections工具类
List<String> name = Collections.nCopies(5, "jerry");
System.out.println(name);
[jerry, jerry, jerry, jerry, jerry]
要是复制某个元素N遍的工具类。此种方式添加的不可变,类似第二种。同样的,要想可变,用ArrayList
List<String> name = new ArrayList<>(Collections.nCopies(5, "jerry"));
name.add("tom");
System.out.println(name);
[jerry, jerry, jerry, jerry, jerry, tom]
5.匿名内部类
List<Integer> score= new ArrayList() {{
add(89);
add(90);
add(100);
}};
System.out.println(score);
[89, 90, 100]