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"));

posted @ 2019-03-19 15:28  程序员宝典  阅读(7509)  评论(0编辑  收藏  举报