779494918860269
서민수
  • 2016.10.9 18:24
  • 조회수 66
  • 답변수 1
779494918860269
서민수
  • 2016.10.9 18:24
  • 조회수 66
  • 답변수 1

앞에서 배운 내용과 응용이 안되서 그러는데 해석부탁드려도 될까요?

for (int i =0 까진 알겠는데 그 다음
i < arrray.length i++) 이 부분부터 응용이 되지 않습니다..
2차원배열과 어떻게 연관된 부분이길래 출력되는 건가요?

ArrayExam.java
public class ArrayExam{
  public static void main(String[] args){
    int [][] array = {{1},{1,92},{165,247,353},{521,276,543,4654}};

    //2차원 배열 array를 출력합니다.
 //   for(int i = 0 ; i < array.length ; i++){
 //     System.out.print((i+1) + "번째 줄을 출력합니다>");
      for(int j = 0; j< array[i].length ; j++){
        //System.out.print는 줄을 바꾸지 않고 출력하는 코드입니다.
        System.out.print(array[i][j]+" ");
      }
      System.out.println("");//줄바꿈을 해 주는 코드입니다.
    }
  }
}
  • #자바 입문
  • #2차원배열 - 실습

1 답변

  • Img profile default
    lee
    • 2016.12.18 04:42

    조건문부터 보자면 [ i ][ j ]모양의 표가 있다고 보시면 됩니다.
    { 1, X, X, X}
    { 1, 92, X, X}
    {165, 247, 353, X}
    {521, 276, 543, 4654}
    이런식으로요. (X는 없는 값을 표시한 겁니다.)
    행을 i, 열을 j 라고 했을때 i값이 늘어나면 세로로, j가 늘어나면 가로로 이동합니다.

    array.length는 배열의 길이를 뜻하지만, array[i].length는 i번째 행의 길이를 뜻합니다.
    예시의 경우 [0][] 에서는 [0][0]밖에 없으니 하나만, [1][]에서는 [1][0],[1][1] 두개가 있으니 두개를 모두 출력하겠죠

    i++ 및 j++를 하는건 다음배열번호로 가기 위한 증감값입니다.
    즉, 위 예시에서는 배열에 대한 인덱스 번호를 각각 i와 j라는 변수를 이용해 [ i ][ j ] 배열이 된거죠.
    i 나 j 값에 따라 출력시켜주는 값은 배열안에 저장된 값에 따라 다르겠죠?

답변 쓰기

이 입력폼은 마크다운 문법을 지원합니다. 마크다운 가이드 를 참고하세요.