카테고리 없음

본캠프 : JAVA 기초 유튜브 강의 수강_chap05_01-05

EJ EJ 2025. 1. 3. 14:16

<Chapter05>

01. 배열 (6:09:29)

02. 배열 순회 (6:25:07)

03. 다차원 배열(전반전) (6:34:08)

       다차원 배열 (후반전) (6:41:53)

04. 다차원 배열 순회 (전반전) (6:47:46)

       다차원 배열 순회 (후반전) (6:55:43)

05. 아스키 코드 (7:04:04)

<퀴즈 #5> (7:13:09)

 

배열

public class _01_Array {
    public static void main(String[] args) {
        // 배열 : 같은 자료형의 값 여러 개를 저장하는 연속된 공간
        // 배열 선언 첫 번째 방법
        // String[] coffees = new String[4];
        // coffees[0] = "아아";
        // coffees[1] = "모카";
        // coffees[2] = "라떼";
        // coffees[3] = "카푸치노";
        // 두 번째 방법
        // String coffees[] = new String[4];
        // 세 번째 방법
        // String[] coffees = new String[] {"아아", "모카", "라떼", "카푸치노"};
        // 네 번째 방법
        String[] coffees = {"아아", "모카", "라떼", "카푸치노"};

        System.out.println(coffees[0] + " 하나 주세요."); // 아아 하나 주세요.

        coffees[2] = "에스프레소";
        System.out.println(coffees[2] + " 하나 주세요."); // 에스프레소 하나 주세요.

        // 다른 자료형
        int[] i = new int[3];
        i[0] = 1;
        i[1] = 2;
        i[2] = 3;
        double[] d = new double[] {10.1, 10.2};
        boolean[] b = {true, true, false, true};
    }
}

 

배열순회

public class _02_ArrayLoop {
    public static void main(String[] args) {
        // 배열의 순회
        String[] coffees = {"아아", "모카", "라떼", "카푸치노"};

        // for 반복문 순회
        for (int i = 0; i < 4; i++) {
            System.out.println(coffees[i] + " 하나 주세요.");
        }

        // 배열의 길의를 이용한 순회 : 순회 범위 설정 가능
        for (int i = 0; i < coffees.length; i++) {
            System.out.println(coffees[i] + " 하나 주세요.");
        }

        // enhanced for (= for-each) 반복문 : 처음부터 끝까지 순회
        for (String a : coffees) {
            System.out.println(a + " 하나 주세요.");
        }
    }
}

 

다차원배열

public class _03_MultiArray {
    public static void main(String[] args) {
        // 3 X 5 크기의 배열
        String[][] seats = new String[][]{
                {"A1", "A2", "A3", "A4", "A5"},
                {"B1", "B2", "B3", "B4", "B5"},
                {"C1", "C2", "C3", "C4", "C5"},
        };

        // B2에 접근
        System.out.println(seats[1][1]);

        // C5에 접근
        System.out.println(seats[2][4]);

        // 첫 줄에는 3칸, 둘째 줄에는 4칸, 셋째 줄에는 5칸
        String[][] seats2 = {
                {"A1", "A2", "A3"},
                {"B1", "B2", "B3", "B4"},
                {"C1", "C2", "C3", "C4", "C5"}
        };

        // A3에 접근
        System.out.println(seats2[0][2]);

        // A5에 접근
        // System.out.println(seats2[0][4]); 에러
    }
}

 

다차원배열 순회

public class _04_MultiArrayLoop {
    public static void main(String[] args) {
       // 다차원 배열 순회
        String[][] seats = new String[][]{
                {"A1", "A2", "A3", "A4", "A5"},
                {"B1", "B2", "B3", "B4", "B5"},
                {"C1", "C2", "C3", "C4", "C5"},
        };

        for (int i = 0; i < 3; i++) { // 세로
            for (int j = 0; j < 5; j++) { // 가로
                System.out.print(seats[i][j] + " ");
            }
            System.out.println();
        }

        String[][] seats2 = {
                {"A1", "A2", "A3"},
                {"B1", "B2", "B3", "B4"},
                {"C1", "C2", "C3", "C4", "C5"}
        };

        for (int i = 0; i < seats2.length; i++) {
            for (int j = 0; j < seats2[i].length; j++) {
                System.out.print(seats2[i][j] + " ");
            }
            System.out.println();
        }

        System.out.println("----------------------");
     // 10 x 15 크기 영화관 좌석
        String[][] seats3 = new String[10][15];
        String[] english = {"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] = english[i] + (j +1);
            }
        }

        // 표 구매
        seats3[7][8] = "--"; // F9
        seats3[7][9] = "---"; // F10

        // 영화 좌석 번호 확인
        for (int i = 0; i < seats3.length; i++) { // 세로
            for (int j = 0; j < seats3[i].length; j++) { // 가로
                System.out.print(seats3[i][j] + " ");
            }
            System.out.println();
        }
}
}

 

아스키 코드

public class _05_ASCII {
    public static void main(String[] args) {
        // 아스키 코드 (ANSI) : 미국표준코드
        // 알파벳 대문자(A)는 65부터 시작, 소문자(a)는 97부터 시작, 숫자(0)는 48부터 시작
        char c = 'A';
        System.out.println(c); // A
        System.out.println((int) c); // 65

        c = 'B';
        System.out.println(c); // B
        System.out.println((int) c); // 66

        c++;
        System.out.println(c); // C
        System.out.println((int) c); // 67

    // 세로 10 x 가로 15 크기 영화관 좌석
    String[][] seats3 = new String[10][15];
    char ch = 'A';
        for(int i = 0; i<seats3.length;i++) {
        for (int j = 0; j < seats3[i].length; j++) {
            seats3[i][j] =String.valueOf(ch) + (j + 1);
        }
        ch++;
    }
    // 영화 좌석 번호 확인
        for (int i = 0; i<seats3.length;i++) {
        for (int j = 0; j < seats3[i].length; j++) {
            System.out.print(seats3[i][j] + " ");
        }
        System.out.println();
    }
}
}

 

<퀴즈5>

문제:

배열을 활용하여 쇼핑몰에서 구매 가능한 신발 사이즈 옵션을 출력하는 프로그램을 작성하시오.

 

조건:

-신발 사이즈는 250부터 295까지 5단위로 증가

-신발 사이즈 수는 총 10가지

 

실행결과:

 

👉🏻 정답(소스코드 / 직접 작성)

public class _Quiz_05 {
    public static void main(String[] args) {
        int[] size = new int[10];
        for (int i = 0; i < size.length; i++) {
            size[i] += 250 + (5 *i);
        }

        for (int size2: size) {
            System.out.println("사이즈 " + size2 + " (재고 있음)");
        }
    }
}