2017-09-27 3 views
-1

그래서 5 by 4 by 3 배열을 만들어야합니다. 각 행과 열의 정렬 된 트리플을 [1,2,3]으로 초기화합니다. 이 형식으로 출력하십시오.Java에서 For 루프를 사용하여 3D 배열 만들기

[1,2,3], [1,2,3]을, [1,2,3], [1,2,3]

[1,2,3], [1, 2,3], [1,2,3], [1,2,3]

[1,2,3], [1,2,3], [1,2,3], [1 1,2,3]

[1,2,3], [1,2,3], [1,2,3], [1,2,3]

[1,2,3 ], [1,2,3], [1,2,3], [1,2,3]

Eclipse Oxygen을 사용하고 있습니다. 아래는 지금까지 내가 한 것입니다.

Public 클래스 트리플 {

public static void main(String[] args) { 
    int[][][] scores = new int[5][4][3]; 

    for (int i = 0; i < scores.length; i++) { 
     for (int a = 0; a < scores[i].length; a++) { 
      for (int b = 0; b < scores[i][a].length; b++) { 
       scores[i][a][b] = i*1; 

      } 
     } 
    } 


    for (int i = 0; i < scores.length; i++) 
    { 
     for (int a = 0; a < scores[i].length; a++) 
     { 
      System.out.print("{"); 
      for (int b = 0; b < scores[i][a].length; b++) 
      { 
       System.out.print(scores[i][a][b] + " "); 
      } 
      System.out.print("} "); 
     } 
     System.out.println(); 
    } 
} 

}는

문제는 그 아래에 출력한다.

{0 0 0} {0 0 0} {0 0 0} {0 0 0

{1 1 1} {1 1 1} {1 1 1} {1 1 1}

{2 2 2} {2 2 2} {2 2 2} {2 2 2}

{3 3 3} {3 3 3} {3 3 3} {3 3 3}

{4 4 4} {4 4 4} {4 4 4} {4 4 4}

출력 방법 [1,2,3]을 알 수 없습니다. 나는 그것이 점수 [i] [b] = i * 1과 관련이 있다는 것을 압니다. 그래서 기본적으로 3 by 5 by 4 by 3의 3 차원 어레이에서 [1,2,3]을 어떻게 출력합니까?

+1

스택 오버플로에 오신 것을 환영합니다! 디버거를 사용하는 법을 배워야 할 것 같습니다. [보완적인 디버깅 기술] (https://ericlippert.com/2014/03/05/how-to-debug-small-programs/)을 참고하십시오. 이후에 문제가 계속되는 경우 더 구체적인 질문으로 다시 돌아 오십시오. –

+0

''[i] [a] [b] = b + 1;' –

+0

자바에 대해서는 전문가가 아니지만 볼 수있는 한 아무런 버그가 보이지 않습니다. @Joe C –

답변

1
for (int i = 0; i < scores.length; i++) 
{ 
    for (int a = 0; a < scores[i].length; a++) 
    { 
     for (int b = 0; b < scores[i][a].length; b++) 
     { 
      scores[i][a][b] = b+1; 
     } 
    } 
} 

당신과 5 × 4 × 3을가는 차원 배열, 당신은 당신이 5 통해 반복하여 시작 코드에서 볼 다음 각 배열에 1,2,3를 원하기 때문에 4 다음 (3) 3시에 루핑을 할 때마다 인덱스 0에서 시작한다고 가정하고 + 1 변수를 필요로합니다.

+0

편집하십시오 게시물을 작성하고 코드에 설명을 추가하십시오. 예를 들어 무엇을 수정했으며 그 이유는 무엇입니까? – juzraai

관련 문제