선생님 안녕하세요. 2-D ARRAY를 -1.0이 되게 하라는 코딩인데요. ``` Double[][] myDoubles = new Double[10][10]; for(int row = 0 ; row < myDoubles.length; row++) for(int column = 0 ; column < myDoubles[row].length; column++) myDoubles[row][column] = -1.0; ``` 일단은 문제가 잘 이해가 되지는 않는데요 myDouble[row] [column] = -1.0 의 의미가 무엇인지 궁금합니다. -1.0의 값을 찾는 내용인지요?
# 2차원 배열과 중첩된 반복문 ## 요약 2차원 배열 전체요소에 -1.0 값을 대입하는 코드입니다. ## 설명 10 x 10 배열의 모든 요소를 반복문을 사용하여 값을 초기화 해주고 있네요. ``` // Double 타입의 2차원 배열을 생성 // double(primitives)이 아닌 Double(Wrapper) 인것을 주의! Double[][] myDoubles = new Double[10][10]; // row 별, 반복 수행 for(int row = 0 ; row < myDoubles.length; row++) // column 별, 반복 수행 for(int column = 0 ; column < myDoubles[row].length; column++) // 값을 -1.0 으로 초기화 myDoubles[row] [column] = -1.0; ``` 주의해야 할점이 있다면 `double` 타입이 아닌 `Double`타입 이라는 것입니다. 반복문을 통해 `-1.0` 값을 대입하지 않았다면, 2차원 배열의 모든 요소는 null 값이 되게 됩니다. ``` // double[][] 타입인 경우, 초기 값 [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] // Double[][] 타입 인경우, 초기 값 [null, null, null, null, null, null, null, null, null, null] [null, null, null, null, null, null, null, null, null, null] [null, null, null, null, null, null, null, null, null, null] [null, null, null, null, null, null, null, null, null, null] [null, null, null, null, null, null, null, null, null, null] [null, null, null, null, null, null, null, null, null, null] [null, null, null, null, null, null, null, null, null, null] [null, null, null, null, null, null, null, null, null, null] [null, null, null, null, null, null, null, null, null, null] [null, null, null, null, null, null, null, null, null, null] ``` ## 생각거리 primitive types 와 wrapper class 의 차이를 구글링 해보세요.