2011-07-25 32 views
6
ArrayList<Integer>[][] matrix = new ArrayList<Integer]>[sizeX][sizeY](); 

Java - ArrayList <Integer> [] []可能嗎?

ArrayList<Integer>[][] matrix = new ArrayList<Integer]>()[sizeX][sizeY]; 

不工作,我開始認爲它甚至不能存儲的ArrayList在矩陣?

+1

你想實現什麼?你發佈的兩件事顯然是不可能的,因爲它們不會編譯。你能告訴我們你想要什麼嗎? –

回答

7

如果你仍然想使用和數組:

ArrayList<Integer>[][] matrix = new ArrayList[1][1]; 
    matrix[0][0]=new ArrayList<Integer>(); 
    //matrix[0][0].add(1); 
1

嘗試

List<List<Integer>> twoDList = new ArrayList<ArrayList<Integer>>(); 

瞭解更多關於List

+0

我想要做的是創建一個多維數組(矩陣),我在每個位置上都有一個ArrayList。 – Sane

+0

好的。這對你來說是完美的。 –

+2

難以確定,但它聽起來像OP實際上想要一個3D矩陣:一個2d矩陣,其單元是陣列列表。 – CPerkins

1

使用此,

List<List<Integer>> matrix = new ArrayList<ArrayList<Integer>>(); 

這意味着你列表將包括整數作爲其價值的名單。

0

泛型和數組一般不拌勻,但是這將工作(給予警告,可以安全地忽略):

ArrayList<Integer>[][] matrix = new ArrayList[sizeX][sizeY]; 
0

如果你想存儲在一個數組列表,那麼你仍然必須將聲明和初始化分開:

ArrayList<Integer>[][] matrix = new ArrayList[10][10]; 

將指定ArrayList對象的2-dim陣列。

matrix[0][0] = new ArrayList<Integer>(); 

將用一個新的整數ArrayList初始化一個特定的單元格。

相關問題