[Java] 참조 타입 - 배열

전우석·2024년 3월 26일

Java

목록 보기
20/24

배열(Array)

Java에서 배열은 같은 타입의 여러 값연속된 메모리 공간에 저장하여 관리하는 참조 타입이다.

  • 배열을 통해 동일한 타입의 데이터 요소들을 효율적으로 관리할 수 있다.
  • 이러한 요소들은 메모리 상에서 연속적으로 위치하여 존재한다.

배열의 특징

  • 인덱스를 통한 접근
    • 배열의 각 요소는 0부터 시작하는 인덱스로 접근할 수 있다.
    • 반복문과 결합하여 배열의 모든 요소를 순회할 수 있다.
  • 크기 고정
    • 배열은 생성 시에 지정한 크기가 고정되며, 이후 크기를 변경할 수 없다.
  • 타입 일관성
    • 배열은 선언된 동일한 타입의 데이터만 저장할 수 있으며, 이를 통해 타입 안정성이 보장된다.
  • 기본값 초기화
    • 배열이 생성될 때, 값을 명시하지 않으면, 각 요소는 해당 타입의 기본값으로 초기화된다.
    • 예를 들어, int 타입 배열의 요소는 0으로, 객체 타입 배열의 요소는 null로 초기화된다.

배열 선언

1. 배열 변수만 생성

int[] myArr;  // 타입[] 배열이름;
  • 값을 할당하지 않았으므로 null값을 가지는 배열이 할당된다.

2. 변수 생성과, 크기 지정

선언한 배열에 메모리를 할당하려면, new 키워드와 함께 배열의 크기를 지정한다.

int[] myArr = new int[5];  // 배열이름 = new 타입[크기];
  • 위 코드의 실행 결과로 [0, 0, 0, 0, 0]의 값을 가지는 배열이 생성된다.

3. 변수 생성과 동시에 값 할당

배열을 생성하고, 생성하는 동시에 배열의 값을 초기화한다.

int[] myArr = {1, 2, 3, 4, 5};  // 타입[] 배열이름 = {값1, 값2, 값3, ...};

// 또는

int[] myArr = new int[]{1, 2, 3, 4, 5};
  • 첫 번째와 두 번째 모두 [1, 2, 3, 4, 5] 값을 가지는 배열이 생성된다.

배열 사용

배열 인덱싱(index)

대괄호[] 안에 정수 n을 넣어 n번째 인덱스를 호출할 수 있다.

int[] myArray = {1, 2, 3, 4, 5};
int thirdElement = myArray[2]; // 배열의 세 번째 요소인 3을 불러온다.

배열 길이(length) 불러오기

배열의 길이(요소의 개수)를 반환한다.

int[] myArray = {1, 2, 3, 4, 5};
int length = myArray.length; // length = 5

배열 관련 메서드

배열 자체에는 메서드가 정의되어 있지 않다. 그러나 Java의 기본 라이브러리로 배열과 관련된 메서드를 제공하는 java.util.Arrays 클래스가 있다.

sort

  • 배열의 요소를 오름차순으로 정렬한다.
int[] myArray = {5, 3, 2, 4, 1};
Arrays.sort(myArray); // myArray는 {1, 2, 3, 4, 5}로 정렬됨

copyOf

  • 배열의 복사본을 생성하여 반환한다.
int[] copiedArray = Arrays.copyOf(myArray, myArray.length); // myArray의 복사본을 생성

0개의 댓글