본문 바로가기

인강 보습 (인프런,유데미,패스트캠퍼스)/나도코딩의 자바 기본편

배열 (1)

 

 

public static void main(String[] args) {
        // 배열 : 같은 자료형의 값 여러 개를 저장하는 연속된 공간
        String coffeeRoss = "아메리카노";
        String coffeeRachel = "카페모카";
        String coffeeChandler = "라떼";
        String coffeeMonica = "카푸치노";

        System.out.println(coffeeRoss + " 하나"); // 아메리카노 하나
        System.out.println(coffeeRachel + " 하나");
        System.out.println(coffeeChandler + " 하나");
        System.out.println(coffeeMonica + " 하나");
        System.out.println("주세요");

        // 배열 선언 첫 번째 방법
        // String[] coffees = new String[4];

        // 두 번째 방법
        // String coffees[] = new String[4];
//        coffees[0] = "아메리카노"; // 0 부터 시작
//        coffees[1] = "카페모카";
//        coffees[2] = "라떼";
//        coffees[3] = "카푸치노";

        // 세 번째 방법
        // String[] coffees = new String[] { "아메리카노", "카페모카", "라떼", "카푸치노" };

        // 네 번째 방법
        String[] coffees = { "아메리카노", "카페모카", "라떼", "카푸치노" };

        System.out.println("---------------------------");

        // 커피 주문
        System.out.println(coffees[0] + " 하나"); // 아메리카노 하나
        System.out.println(coffees[1] + " 하나"); // 카페모카 하나
        coffees[2] = "에스프레소"; // 값 변경
        System.out.println(coffees[2] + " 하나");
        System.out.println(coffees[3] + " 하나");
        System.out.println("주세요");

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

 

배열 순회 

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

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

    System.out.println("--------------------------");

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

    System.out.println("--------------------------");

    // enhanced for (for-each) 반복문
    for (String coffee : coffees) {
        System.out.println(coffee + " 하나");
    }
    System.out.println("주세요");
}

 

다차원 배열 

 

public static void main(String[] args) {
    // 다차원 배열 (2차원 배열)

    // 소규모 영화관 좌석
    // A1 - A5
    // B1 - B5
    // C1 - C5

    String[] seatA = {"A1", "A2", "A3", "A4", "A5"};
    String[] seatB = {"B1", "B2", "B3", "B4", "B5"};
    String[] seatC = {"C1", "C2", "C3", "C4", "C5"};

    // 3 x 5 크기의 2차원 배열
    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]);

    // 3차원 배열 만들기 (세로 x 가로 x 높이)
    String[][][] marray = new String[3][3][3];
}