2013-04-12 82 views
0

比如我有一個初始化的int數組是這樣的:如何將int數組轉換爲數組列表?

int[] array = {1, 2, 3, 4, 5, 6}; 

是否有可能使這一個ArrayList?

+0

的可能重複[如何創建陣列的ArrayList(ArrayList的)(T \ [\])在Java中](http://stackoverflow.com/questions/157944/how-to-create-arraylist-arraylistt-from-array-t-in-java) – hyde

回答

6

由於array的類型是int[]而不是Integer[],Arrays.asList()沒有任何幫助。

這裏是將工作的一種方式:

List<Integer> list = new ArrayList<Integer>(); 
for (int el : array) { 
    list.add(el); 
} 

如果array類型可以更改爲Integer[],事情就變得簡單了:

Integer[] array = {1, 2, 3, 4, 5, 6}; 
List<Integer> list = Arrays.asList(array); 

這給出了一個列表,但不是一個ArrayList 。你得到的是類似ArrayList,但是是固定大小。如果這是一個問題,你可以使用:

List<Integer> list = new ArrayList<Integer>(Arrays.asList(array)); 
+0

我將數組改爲Integer [],但它說「類型列表不帶參數「這是什麼意思?我寫的方式有問題嗎? –

+0

@progRookie:您可能導入了'java.awt.List'而不是'java.util.List'。 – NPE

+0

問題已解決:)謝謝^^ @NPE –

-1
int[] array = {1, 2, 3, 4, 5, 6}; 
ArrayList myArrayList = new ArrayList<Integer>(); 
for(int i=0; i<array.length; i++) 
{ 
    myArrayList.add(array[i]); 
} 

希望這可以幫助你......

+1

使用您的IDE編碼並複製/粘貼到此處。這樣可以避免編譯器錯誤,比如你的答案。 – jlordo