선생님 안녕하세요.
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의 값을 찾는 내용인지요?
sehongpark님의 답변
# 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 의 차이를 구글링 해보세요.