코딩 공부/Java

[Java]Chpater 1 - 09) 배열

sintory-04 2025. 2. 25. 14:00

    1. 배열(Array)

    1) 배열이란?

    • 비슷한 주제의 데이터들을 하나의 그룹으로 묶어서 표현.
    • 관련된 데이터를 편리하게 관리하기 위해 사용됨.
    • 모든 자료형의 종류로 배열을 만들 수 있음.

    2) 배열의 길이

    • 배열의 길이는 배열에 들어갈 수 있는 데이터의 개수를 의미합니다.
    • 배열을 만들 때 한 번 크기를 정하면 변경할 수 없습니다. (정적배열)
    • 아래 문법으로 배열의 길이를 구할 수 있습니다.
    배열이름.length
    int arrLenght =  adventurerList.length;

    3) 배열 선언(Array Declaration)

    • new 키워드를 사용해 배열을 선언할 수 있습니다.
    자료형[] 변수이름 = new 자료형[배열의길이]; // 배열선언
    • (1)배열의 이름과 (2)길이 설정을 각 다른 줄에서 할 수 있습니다.
    int[] arr; 
    arr = new int[5]
    • 배열 선언과 배열길이설정은 같은 줄에 할 수도 있습니다.
    int[] arr = new int[5]; 
    • int 자료형은 4바이트 크기의 자료형입니다.
    • 길이가 5int 형 배열은 메모리에서 20바이트크기를 가집니다. (4바이트 * 5 = 20바이트)

    4) 문자열 배열

    // 길이가 5인 문자열 배열 arrA 를 선언 
    String[] arrA = new String[5];

    5) 논리형 배열

    // 길이가 3인 논리형 배열 arrB 를 선언
    boolean[] arrB = new boolean[3];

    6) 배열의 요소

    • 배열 안에 들어있는 각각의 값을 배열의요소 라고 함
    • 배열 선언과 동시에 배열의 요소를 설정할 수도 있음
    int[] arr = {10, 20, 30, 40, 50}; 

    7) 인덱스

    • 각 배열의 요소에 접근하려면 인덱스(index) 를 이해해야 합니다.
    • index 의 시작은 0 입니다.
    • 인덱스를 통해 원하는 배열의 요소에 빠르게 접근할 수 있습니다.
    • 배열의 범위에 벗어난 요소에 접근 시 ArrayIndexOutOfBoundsException 에러가 발생
    • 인덱스(index) 를 활용할 때는 배열의 범위를 벗어나지 않게 주의

    8) 배열에 정보 삽입 수정

    • 인덱스(index) 를 활용해 각 요소의 값을 삽입 수정할 수 있습니다.
    int[] arr = new int[5];
    arr[0] = 100; // ✅ 1번째 요소를 100로 설정
    arr[1] = 200; // ✅ 2번째 요소를 200로 설정
    arr[2] = 300; // ✅ 3번째 요소를 300로 설정
    arr[3] = 400; // ✅ 4번째 요소를 400로 설정
    arr[4] = 500; // ✅ 5번째 요소를 500로 설정
    arr[5] = 600; // ❌ 접근 불가

    9) 배열 탐색

    • 인덱스(index) 를 활용해 배열을 탐색할 수 있습니다.
    • 변수를 인덱스(index) 로 활용한다면 반복문을 통해 쉽게 배열을 탐색할 수 있습니다.
    int[] arr = {1, 2, 3, 4, 5};
    
    for (int i = 0; i < arr.length; i++) {
            // ✅ 숫자대신 변수i 를 인덱스 활용 
        System.out.println("numbers[" + i + "] = " + arr[i]); 
    }

    10) 향상된 for

    • 배열의 모든 요소를 하나씩 꺼내서 활용할 때 편리한 반복문
    • index 직접 활용하지 못함
    • for (int a : arr) → 배열 arr 에서 하나씩 꺼내서 a 에 저장
    • IndexOutOfBoundsException 에러가 발생하지 않음.
    for(배열의요소 : 배열) {
            명령문;
    }

    2. 2차원 배열

    • 2차원배열은 2차원적인 정보를 표현할 때 적합
    • 첫 번째 인덱스는 = 가로 방향을 의미
    • 두 번째 인덱스는 = 세로 방향을 의미
    boolean[][] board = new boolean[2][2]; // 2 x 2 2차원 배열 선언

    '코딩 공부 > Java' 카테고리의 다른 글

    [Java] Chpater 2- 01) 클래스와 객체  (1) 2025.02.25
    [Java]Chpater 1 - 10) 메서드  (0) 2025.02.25
    [Java]Chpater 2 - 08) 반복문  (0) 2025.02.25
    [Java]Chpater 1 - 07) 조건문  (0) 2025.02.25
    [Java]Chpater 1 - 06) 사칙연산  (0) 2025.02.25