ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 배열
    Back end/Java 기본 2023. 11. 14. 12:52

    1. 배열 

    package chap_05;
    
    public class _01_Array {
        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};
    
            
        }
    }
    

     

    2. 배열 순회 

    package chap_05;
    
    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] + "하나");
            }
            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("주세요");
        }
    
    
    
    }
    

     

    3. 다차원배열 

    package chap_05;
    
    public class _03_MultiArray {
        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];
        }
    }
    

     

    4. 다차원 배열 순회 

    package chap_05;
    
    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] + " "); //A1 A2 A3...
                }
                System.out.println();
            }
            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] + " "); //A1 A2 A3...
                }
                System.out.println();
            }
    
            System.out.println("------------------------------");
    
            // 세로 크기 10 x 가로 크기 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);
                }
            }
    
            // 표 구매
            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();
            }
         }
    }
    

     

     

    5. 아스키 코드 

    package chap_05;
    
    public class _05_ASCII {
        public static void main(String[] args) {
            // 아스키 코드 (ASCII) : 미국 표준 코드
            char c = 'A'; // 알파벳 대문자(A)는 65 부터 시작, 소문자(a)는 97 부터 시작, 숫자(0)는 48부터 시작
            System.out.println(c);
            System.out.println((int)c);
    
            c = 'B';
            System.out.println(c);
            System.out.println((int)c);
    
            c++;
            System.out.println(c);
            System.out.println((int)c);
    
    
            // 세로 크기 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] + " "); //A1 A2 A3...
                }
                System.out.println();
            }
        }
    }
    

     

     

    더보기
    public class Americano {
      public static void main(String[] args) {
        // 배열 생성(크기를 먼저 정해줌)
        int[] sales = new int[5];  
        
        // 배열 값 초기화
        sales[0] = 52; // 월
        sales[1] = 50; // 화
        sales[2] = 55; // 수
        sales[3] = 42; // 목
        sales[4] = 38; // 금
        
        // 배열 합 계산
        int sum = sales[0]+ sales[1]+ sales[2]+ sales[3]+ sales[4];
        
        // 출력
        System.out.println("총 판매량: %d잔\n", sum);
      }
    }

     

     

    더보기
    public class DailyUser {
      public static void main(String[] args) {
        // 배열 생성
        int[] users = { 581, 512, 527, 495, 423, 141, 236 };
        
        // 계산
        double dailyUser = average(users);
        
        // 출력
        Systehttp://m.out.printf("하루 평균 사용자: %.2f명", dailyUser);
      }

      // 정수 배열을 입력받아, 평균을 반환
      public static double average(int[] arr) { // int[]의 배열 타입을 받아야함 
        // 1. 총합을 구하시오.
        double sum = 0;  
        for(int i = 0; i < arr.length; i++){
          sum += arr[i];
        }
        
        // 2. 평균을 계산하시오  : 총합/ 개수 => 평균.
        // int / int => int 주의!! 
        double avg = sum / arr.length;

        // 결과값 반환
        return avg;
      }
    }

    'Back end > Java 기본' 카테고리의 다른 글

    LinkedList를 이용하여 홀수/짝수 return 문제  (0) 2023.11.14
    메소드  (0) 2023.11.14
    Continue  (0) 2023.11.14
    Break  (0) 2023.11.14
    구구단 만들기  (0) 2023.11.14
Designed by Tistory.