java List的初始化

今天在处理生成excel的时候用到了java的list,但是需要直接赋值固定的几个变量,如果先初始化然后add的方法:

List<String> name = new ArrayList();

name.add("xxx");

name.add("yyy");

name.add("zzz");

这样的方法似乎有点蠢,于是默默搜了下java list

这个是list的官方文档的样子,可以看到大大的“Interface List<E>”。所以说List<String>不能直接实例化,而它有许多子类,AbstractList, AbstractSequentialList, ArrayList, AttributeList, CopyOnWriteArrayList, LinkedList, RoleList, RoleUnresolvedList, Stack, Vector等。详见此处。

这里需要用的是ArrayList。

所以初始化一个list当然可以用List<String> name = new ArrayList();然后根据需求慢慢add。

然而有木有更简洁的方法呢?如下

List<String> name = Arrays.asList("xxx","yyy","zzz");(不过这样的话这个list的size就固定了,不能再add了,要注意。)

or

List<String> name = new ArrayList<>(Arrays.asList("xxx","yyy","zzz"));

原文地址:https://www.cnblogs.com/muhy/p/10404811.html