我有一个 String
数组,我希望能够按照以下方式做一些事情
String[] arrayOfStrings = {"this", "is", "an", "array", "of", "strings"};
List<String> listOfStrings = new ArrayList<String>( arrayOfStrings );
或
List<String> listOfStrings = new ArrayList<String>();
listOfStrings.addAll( arrayOfStrings );
我知道如果我的字符串已经在一个集合中,我可以同时执行这两个操作,而且我可以遍历数组并单独添加它们,但是那个有点乱。
有什么方法可以用数组初始化 List
(或与此相关的任何集合)?
您可以使用 Arrays.asList
方法,它接受一个 var-args
,并返回一个由数组支持的固定大小的 List
。因此,您不能向该列表中添加任何元素。此外,对 List
的元素所做的任何修改都将反射(reflect)在 array
中。
String[] arrayOfStrings = {"this", "is", "an", "array", "of", "strings"};
List<String> list = Arrays.asList(arrayOfStrings);
或:-
List<String> list = Arrays.asList("this", "is", "an", "array", "of", "strings");
如果你想增加这个列表的大小,你必须在 ArrayList
构造函数中传递它。
List<String> list = new ArrayList<String>(Arrays.asList(arrayOfStrings));