2016-11-30 164 views
0

我在ArrayList中有一個數組,我想單獨訪問數組中的每個元素以使用它們。 我的代碼不起作用:如何從ArrayList中的數組打印單個元素

ArrayList<int[]> freeSpot = new ArrayList<int[]>(); 

    for (int x = 0; x < 3; x++) { 
     for (int y = 0; y < 3; y++) { 
      freeSpot.add(new int[]{x, y}); 
     } 
    } 

    System.out.println(freeSpot.get(int[0])); 

希望有人能幫助!謝謝。

+0

你是不是指'freeSpot.get(0)'? – shmosel

+0

'System.out.println(Arrays.toString(freeSpot.get(0)));' – janos

+0

'System.out.println(freeSpot.get(0)[0]);' –

回答

1

你應該做到以下幾點:

System.out.println(freeSpot.get(x)[y]); 

其中x如果列表中的索引和y數組的索引。

例如:

獲取列表的第一個元件的陣列的第一個元素:

System.out.println(freeSpot.get(0)[0]); 

獲取列表的第一個元件的所述陣列的所述第二元件:

System.out.println(freeSpot.get(0)[1]); 
+0

get(0)[1]並得到(0)[2]應得到(0)[0]和得到(0)[1] – Sedrick

+1

注意錯誤:)謝謝 – davidxxx

+1

我還不能編輯。大聲笑我也犯了同樣的錯誤。 – Sedrick

1

略有不同的方法:

List<Integer[]> freeSpot = new ArrayList<>(); 

for (int x = 0; x < 3; x++) { 
    for (int y = 0; y < 3; y++) { 
     freeSpot.add(new Integer[]{x, y}); 
    } 
} 

for(Integer[] entry : freeSpot) { 
    System.out.println("x: " + entry[0] + " y: " + entry[1]); 
}