자바 배열

IT 위키

자바 배열(Java Array, 配列)은 동일한 자료형의 데이터를 고정된 크기로 연속 저장하는 자료구조로, 인덱스를 통해 각 요소에 접근할 수 있다.

1 개요[편집 | 원본 편집]

자바에서 배열은 객체로 취급되며, 힙(heap) 메모리 영역에 저장된다. 배열은 생성 시 크기가 고정되며, 이후 변경할 수 없다. 각 요소는 인덱스를 통해 접근하며, 인덱스는 0부터 시작한다.

2 배열 선언과 생성[편집 | 원본 편집]

배열은 선언과 동시에 생성하거나, 나중에 생성할 수 있다.

  • 선언 방법
    • 자료형[] 배열이름;
    • 자료형 배열이름[]; (비추천)
  • 생성 방법
    • 배열이름 = new 자료형[크기];
  • 선언과 생성 동시에
    • int[] arr = new int[5];
  • 선언과 초기화 동시에
    • int[] arr = {1, 2, 3, 4, 5};

3 배열 요소 접근[편집 | 원본 편집]

배열 요소는 인덱스를 사용하여 접근하며, 인덱스는 0부터 시작한다.

int[] scores = {90, 80, 70};
System.out.println(scores[1]);  // 80

4 배열의 길이[편집 | 원본 편집]

배열의 크기(길이)는 length 필드를 통해 확인할 수 있다.

int[] arr = new int[10];
System.out.println(arr.length);  // 10

5 반복문과 배열[편집 | 원본 편집]

배열은 일반 for문이나 향상된 for문(enhanced for-loop)을 이용하여 순회할 수 있다.

// 일반 for문
for (int i = 0; i < arr.length; i++) {
    System.out.println(arr[i]);
}

// 향상된 for문
for (int val : arr) {
    System.out.println(val);
}

6 다차원 배열[편집 | 원본 편집]

자바는 다차원 배열도 지원한다. 특히 2차원 배열은 배열의 배열 형태로 구현된다.

int[][] matrix = {
    {1, 2},
    {3, 4}
};
System.out.println(matrix[1][0]);  // 3

7 배열과 메모리[편집 | 원본 편집]

  • 배열은 힙에 저장되며, 참조형 변수는 배열의 주소를 스택에 저장한다.
  • 기본형 배열은 기본값으로 자동 초기화된다. (예: int는 0, boolean은 false)

8 예제[편집 | 원본 편집]

public class ArrayExample {
    public static void main(String[] args) {
        String[] fruits = {"apple", "banana", "cherry"};
        for (int i = 0; i < fruits.length; i++) {
            System.out.println(fruits[i]);
        }
    }
}

9 같이 보기[편집 | 원본 편집]

10 참고 문헌[편집 | 원본 편집]

  • Bloch, Joshua. Effective Java. Addison-Wesley, 2018.
  • Gosling, James et al. The Java Language Specification. Oracle, 2023.

11 각주[편집 | 원본 편집]