今天在處理生成excel的時候用到了java的list,但是需要直接賦值固定的幾個變量,如果先初始化然后add的方法:
List<String> name = new ArrayList();
name.add("xxx");
name.add("yyy");
name.add("zzz");
這樣的方法似乎有點蠢,於是默默搜了下java list
https://docs.oracle.com/javase/7/docs/api/java/util/List.html
這個是list的官方文檔的樣子,可以看到大大的“Interface List<E>”。所以說List<String>不能直接實例化,而它有許多子類,AbstractList, AbstractSequentialList, ArrayList, AttributeList, CopyOnWriteArrayList, LinkedList, RoleList, RoleUnresolvedList, Stack, Vector等。
https://docs.oracle.com/javase/7/docs/api/java/util/ArrayList.html
這里需要用的是ArrayList。
所以初始化一個list當然可以用List<String> name = new ArrayList();然后根據需求慢慢add。
然而有木有更簡潔的方法呢?如下
List<String> name = Arrays.asList("xxx","yyy","zzz");
or
List<String> name =new ArrayList<>(Arrays.asList("xxx","yyy","zzz"));
不過這樣的話這個list的size就固定了,不能再add了,要注意。
附上Stack Overflow地址http://stackoverflow.com/questions/13395114/how-to-initialize-liststring-object-in-java