在Java中将数组分配给ArrayList

时间:2010-09-19 17:08:22

标签: java arraylist

我想知道是否可以将数组分配给Java中的ArrayList。

4 个答案:

答案 0 :(得分:39)

您可以使用Arrays.asList()

Type[] anArray = ...
ArrayList<Type> aList = new ArrayList<Type>(Arrays.asList(anArray));

或者Collections.addAll()

ArrayList<Type> aList = new ArrayList<Type>();
Collections.addAll(theList, anArray); 

请注意,从技术上讲,您不是将数组分配给List(嗯,您不能这样做),但我认为这是您正在寻找的最终结果。

答案 1 :(得分:6)

Arrays类包含asList方法,您可以按如下方式使用:

String[] words = ...;
List<String> wordList = Arrays.asList(words);

答案 2 :(得分:2)

如果您正在导入或者您的代码中有一个数组(字符串类型),并且您必须将其转换为arraylist(offcourse字符串),那么使用集合会更好。 像这样:

String array1[] = getIntent().getExtras().getStringArray("key1"); or
String array1[] = ...
then

List<String> allEds = new ArrayList<String>();
Collections.addAll(allEds, array1);

答案 3 :(得分:0)

这正在工作

    int[] ar = {10, 20, 20, 10, 10, 30, 50, 10, 20};

    ArrayList<Integer> list = new ArrayList<>();

    for(int i:ar){
        list.add(new Integer(i));

    }
    System.out.println(list.toString());

    // prints : [10, 20, 20, 10, 10, 30, 50, 10, 20]