본문 바로가기

언어/Java

[ 자바 / Java ] 배열의 사용

반응형

Java에서 배열(Array)은 동일한 데이터 타입의 여러 값을 저장하고 관리할 수 있는 자료 구조입니다. 배열은 고정된 크기를 가지며, 메모리에 연속적으로 할당됩니다. 배열을 사용하면 여러 개의 데이터를 하나의 변수로 다룰 수 있어서, 데이터의 일괄 처리가 간편해집니다. 배열은 여러 가지 타입을 지원하며, 일차원 배열뿐만 아니라 다차원 배열도 사용할 수 있습니다.

1. 배열 요소의 접근

배열의 요소는 인덱스를 통해 접근할 수 있습니다. 인덱스는 0부터 시작하며, 배열의 마지막 요소는 배열의 길이 - 1에 해당하는 인덱스를 가집니다.

예:

int[] numbers = { 10, 20, 30, 40, 50 };
System.out.println(numbers[0]); // 첫 번째 요소 출력: 10
System.out.println(numbers[2]); // 세 번째 요소 출력: 30

numbers[1] = 25; // 두 번째 요소를 25로 변경
System.out.println(numbers[1]); // 변경된 두 번째 요소 출력: 25

2. 배열의 길이

배열의 길이는 배열이름.length로 접근할 수 있습니다. 배열의 길이는 배열이 생성될 때 정해지며, 변경할 수 없습니다.

예:

int[] numbers = { 10, 20, 30, 40, 50 };
System.out.println("Length of array: " + numbers.length); // 배열의 길이 출력: 5

3. 배열의 순회

배열의 모든 요소를 순회하면서 접근하고자 할 때는 for 문이나 향상된 for 문을 사용할 수 있습니다.

for 문을 사용한 배열 순회

int[] numbers = { 10, 20, 30, 40, 50 };

for (int i = 0; i < numbers.length; i++) {
    System.out.println("Element at index " + i + ": " + numbers[i]);
}

향상된 for 문을 사용한 배열 순회

향상된 for 문은 배열의 모든 요소를 간편하게 순회할 수 있는 방법을 제공합니다.

int[] numbers = { 10, 20, 30, 40, 50 };

for (int num : numbers) {
    System.out.println(num);
}

4. 다차원 배열

Java에서는 1차원 배열뿐만 아니라 다차원 배열도 지원합니다. 다차원 배열은 배열의 배열로 표현됩니다.

2차원 배열의 선언과 초기화

2차원 배열은 행(row)과 열(column)로 구성된 배열입니다.

// 선언
int[][] matrix;

// 크기를 지정하여 초기화
matrix = new int[3][4]; // 3행 4열 크기의 2차원 배열 생성

// 초기값을 지정하여 초기화
int[][] matrix = {
    { 1, 2, 3, 4 },
    { 5, 6, 7, 8 },
    { 9, 10, 11, 12 }
};

2차원 배열의 요소 접근

2차원 배열의 요소는 두 개의 인덱스를 사용하여 접근합니다. 첫 번째 인덱스는 행을, 두 번째 인덱스는 열을 나타냅니다.

int[][] matrix = {
    { 1, 2, 3, 4 },
    { 5, 6, 7, 8 },
    { 9, 10, 11, 12 }
};

System.out.println(matrix[0][0]); // 첫 번째 행, 첫 번째 열 요소 출력: 1
System.out.println(matrix[2][3]); // 세 번째 행, 네 번째 열 요소 출력: 12

matrix[1][2] = 20; // 두 번째 행, 세 번째 열 요소를 20으로 변경
System.out.println(matrix[1][2]); // 변경된 요소 출력: 20

2차원 배열의 순회

2차원 배열의 모든 요소를 순회할 때는 중첩된 for 문을 사용합니다.

int[][] matrix = {
    { 1, 2, 3, 4 },
    { 5, 6, 7, 8 },
    { 9, 10, 11, 12 }
};

for (int i = 0; i < matrix.length; i++) { // 행을 순회
    for (int j = 0; j < matrix[i].length; j++) { // 각 행의 열을 순회
        System.out.print(matrix[i][j] + " ");
    }
    System.out.println(); // 각 행이 끝날 때 줄바꿈
}

5. 결론

Java에서 배열은 다양한 데이터 타입의 여러 값을 관리하고 처리하는 데 매우 유용한 자료 구조입니다. 배열은 고정된 크기를 가지며, 동일한 데이터 타입의 값을 인덱스 기반으로 저장합니다. 1차원 배열뿐만 아니라 다차원 배열도 사용할 수 있으며, 이를 통해 복잡한 데이터 구조를 표현할 수 있습니다. 배열은 다양한 작업에 활용될 수 있으며, 데이터를 효율적으로 관리하고 처리할 수 있는 강력한 도구입니다.

반응형