2017-05-24 78 views
0

任何人都知道如何將int[] array添加到2d ArrayList<ArrayList<Integer>>將int數組添加到2d ArrayList

代碼...

import java.util.ArrayList; 
import java.util.Arrays; 

public class Test2 { 
    public static void main(String[] args) { 
     int[] intArray = {1,1,1,1}; 
     ArrayList<ArrayList<Integer>> list = new ArrayList<>(); 

     list.add(new ArrayList<Integer>(Arrays.asList(intArray))); // <- compile error 
    } 
} 

回答

7

改變你的int陣列到陣列Integer

Integer [] intArray = {1,1,1,1}; 
+0

這裏的問題是在我的應用程序中,數組的索引得到通過多種方法作爲'int'爲可變的變化和取得的結果通過。我希望在它被添加到2d ArrayList之前進行轉換。添加它時可以進行轉換嗎? –

+0

有從'int'到'Integer'的自動裝箱,但沒有從'int []'自動裝箱到'Integer []' –

+1

,你可以把它保留爲'int'類型並試試這個'list.add(Arrays.stream(intArray ).boxed()。collect(Collectors.toCollection(ArrayList :: new)));' –

1

讓你ArrayListArrayListint[]

ArrayList<int[]> list = new ArrayList<>(); 
list.add(intArray); // should work now 
+0

是的,我認爲這將工作。感謝一堆:) –