자바 배열 선언방법에 대해 궁금합니다

조회수 1600회

ragged array을 선언(gradeHeights)한 다음 배열에 값을 입력(setData)하는 코드입니다.

int[][] gradeHeights = new int[5][];까지는 문제가 없는데 그 아래로 2차원 배열의 길이를 지정하면 계속해서 문제가 생깁니다.

import java.util.Scanner;

public class ManagerHeight {
    Scanner scan = new Scanner(System.in);

    public static void main(String[] args){
        ManagerHeight manager = new ManagerHeight();
        manager.setData(manager.gradeHeights);
    }
    int[][] gradeHeights = new int[5][];

    gradeHeights[0] = new int[5];
    gradeHeights[1] = new int[4];
    gradeHeights[2] = new int[4];
    gradeHeights[3] = new int[3];
    gradeHeights[4] = new int[5];

    public void setData(int[][] clss){
        for(int i=0; i<4; i++){
            for(int k=0; k<gradeHeights[i].length; k++){
                System.out.println(1+i+"반 "+(1+k)+"번 학생의 키는?");
                clss[i][k] = scan.nextInt();
            }
        }
    }
}

1 답변

답변을 하려면 로그인이 필요합니다.

Hashcode는 개발자들을 위한 무료 QnA 사이트입니다. 계정을 생성하셔야만 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)

ᕕ( ᐛ )ᕗ
로그인이 필요합니다

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 계정을 생성하셔야만 글을 작성하실 수 있습니다.