2016-11-30 12 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) [0] get (0) [1] – Sedrick

+1

부주의 오류 :) 감사합니다 – davidxxx

+1

아직 편집 할 수 없습니다. LOL 나는 또한 같은 유형의 실수에 대해 유죄입니다. – 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]); 
} 
관련 문제