안녕하세요 질문있습니다
2014-09-07
|
by gmawhaan88
1162
import java.util.Scanner;
class worst
{
static Scanner input=new Scanner(System.in);
public static void main(String[] args)
{
int[][] test=new int[][]{
{1, 2, 3},
{4, 5, 6}
};
System.out.println(test.length); // 2출력
System.out.println(test[0].length); // 3출력
System.out.println(test[1].length); // 3출력
// 2차원배열 선언시 행개 만큼 인스턴스를 생성한다?
// test[0]행 인스턴스 (int형 값 3개를 저장할 수 있는 인스턴스)
// test[1]행 인스턴스 (int형 값 3개를 저장할 수 있는 인스턴스)
// test인스턴스는 0행과 1행의 인스턴스 참조값을 저장하는 int?type의 필드(인스턴스변수) 두개 갖고있다
// test[2][3]은 총 세개의 인스턴스를 생성한다?
}
}
1. 주석처리된 부분의 정리한 내용이 맞나요?
정리한 내용이맞다면
예를들어 test[0][1]에 접근할때
test인스턴스 필드에 저장되어있는 test[0]인스턴스의 참조값으로 접근을 하나요?
아니면 test[0]인스턴스 참조값으로 바로 접근을 하나요?
2. 초기화할때
int[][] test=new int[2][3]{
{1, 2, 3},
{4, 5, 6}
};
이런식으로하면 오류가 나던데 왜그런지 궁금합니다
정확하게 행과열의 갯수만큼 초기화시켰는데도 에러가나네요