• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

다차원 배열 순회부분

23.03.12 04:47 작성 조회수 268

0

 안녕하세요!! 좋은 강의 듣게 해주셔서 감사합니다 !!복습 중 이해가 안되는 부분이 있어 질문합니다!!

//세로크기 10 가로크기 15에 해당하는 영화관 좌석

//세로크기 10 가로크기 15에 해당하는 영화관 좌석
        String[][] seats3 = new String[10][15]; // 선언만 할 때에는 크기를 명시
        String[] eng = {"A","B","C","D","E","F","G","H","I","J"};
        for (int i = 0; i < seats3.length ; i++) { // 세로
            for (int j = 0; j < seats3[i].length; j++) {
                seats3[i][j] = eng[i]+(j+1);
                System.out.print(seats3[i][j] + " ");
            }
            System.out.println();
        }

        // 표 구매
        seats3 [7][8] = "__"; // H9
        seats3 [7][9] = "___"; // H10

        // 영화관 좌석 확인

        for (int i = 0; i < seats3.length ; i++) { // 세로
            for (int j = 0; j < seats3[i].length; j++) { // 가로
                System.out.print(seats3[i][j] + " "); // A1,A2,A3...
            }
            System.out.println();

        }

//영화관 좌석 확인 부분에서

String[][] seats3 = new String[10][15]; 
        String[] eng = {"A","B","C","D","E","F","G","H","I","J"};
        for (int i = 0; i < seats3.length ; i++) { // 세로
            for (int j = 0; j < seats3[i].length; j++) {
                seats3[i][j] = eng[i]+(j+1);
                System.out.println(seats3[i][j] + " ");
            }
        }

위 코드 fori 구문을 두번 반복한 뒤 System.out.print(seats3[i][j] + " "); 을 사용해

나타내었는데, 이러지 않고 밑에 코드 블럭 처럼

<바로 sout을 통해 좌석번호를 나타낸다면 틀린 코드인지 궁금합니다. ...>

제가 해보았을 때 같은결과가 나와서...

String[][] seats3 = new String[10][15]; // 선언만 할 때에는 크기를 명시
        String[] eng = {"A","B","C","D","E","F","G","H","I","J"};
        for (int i = 0; i < seats3.length ; i++) { // 세로
            for (int j = 0; j < seats3[i].length; j++) {
                seats3[i][j] = eng[i]+(j+1);
                System.out.print(seats3[i][j] + " ");
            }
            System.out.println();
        }

 

요러케요!!

 

 

답변 2

·

답변을 작성해보세요.

0

안녕하세요?
Ambition 님께서 말씀하신 것처럼 배열의 각 요소에 값을 입력하는 부분, 그리고 반복문을 이용한 2차원 배열 순회를 통해 값을 출력하는 부분으로 코드를 분리해둔 것입니다. 질문글에 남겨주신 것처럼 해도 출력 결과는 동일하게 나오는 것이 정상입니다.
다만 예제에서는 코드가 가까이 있지만 실무에서는 어디에선가는 값을 입력하고, 또 나중에 저 멀리 다른 어디에선가는 값을 출력하거나 값을 확인하면서 작업하는 일이 종종 있어요 😊
감사합니다.

0

Ambition님의 프로필

Ambition

2023.03.12

제가 보기에는 강사님께서 seats3[i][j]에 요소들을 할당하는 부분과 출력하는 부분을 설명하기 쉽게 나누신 것 같습니다. 글쓴이님처럼 작성을 하신다면 할당을 먼저 한 다음, 출력을 바로 해주는 것이기 때문에, 출력결과가 동일한 것은 당연합니다.

최원감님의 프로필

최원감

질문자

2023.03.12

아아 그렇군요 !! 감사합니다!