Java에서 배열은 객체이자 기본적으로 지원되는 자료형 중 하나입니다.
Java에서 배열(array)은 같은 데이터 타입을 가진 여러 요소(element)를 하나의 변수로 관리할 수 있게 해주는 자료 구조입니다. 배열은 고정된 크기를 가지며, 선언된 이후에는 크기를 변경할 수 없습니다
배열의 첫 번째 요소의 메모리 주소를 첫 번째 주소, 기본 주소라고 합니다.
배열은 인덱스(index)를 사용해 각 요소에 접근할 수 있습니다. 이러한 특징 때문에 배열은 데이터의 순서를 유지하고, 특정 위치의 요소에 빠르게 접근할 수 있는 장점이 있습니다.
배열을 사용하기 위해서는 먼저 배열을 선언하고 생성해야 합니다.
int[] numbers;
여기서 int[]
는 int
타입의 배열을 의미하며, numbers
는 배열의 이름(변수)입니다. 이때 배열을 생성하지는 않았고, 단지 배열을 참조할 수 있는 변수를 선언한 것입니다.
배열을 선언한 후, 배열을 생성해야 합니다. 배열을 생성할 때는 배열의 크기를 지정해야 합니다.
numbers = new int[5];
이 코드는 int
타입의 크기가 5인 배열을 생성하고, numbers
라는 변수에 그 배열을 할당합니다.
배열의 선언과 생성을 동시에 할 수도 있습니다:
int[] numbers = new int[5];
배열을 생성하면 배열의 각 요소는 기본값으로 초기화됩니다. 예를 들어, int
배열의 경우 모든 요소가 0으로 초기화됩니다. 다른 타입의 배열도 각각의 기본값이 있습니다.
배열을 생성과 동시에 원하는 값으로 초기화할 수도 있습니다.
int[] numbers = {10, 20, 30, 40, 50}
<int형 배열 numbers 변수>
인덱스(Index) | 배열의 요소(Value) |
---|---|
0 | 10 |
1 | 20 |
2 | 30 |
3 | 40 |
4 | 50 |
배열의 요소는 인덱스를 사용하여 접근할 수 있습니다. 인덱스는 0부터 시작하며, 배열의 크기보다 1 작은 값까지 접근할 수 있습니다.
int firstNumber = numbers[0]; // 첫 번째 요소에 접근 (값: 1)
numbers[0] = 10; // 첫 번째 요소의 값을 10으로 수정
배열의 크기는 생성 시 고정되며, 나중에 변경할 수 없습니다. 배열의 크기는 .length
속성을 통해 확인할 수 있습니다:
int size = numbers.length; // 배열의 크기 (값: 5)
Java에서는 2차원 이상의 다차원 배열도 사용할 수 있습니다. 2차원 배열은 배열의 배열로 이해할 수 있습니다.
int[][] matrix = new int[3][4]; // 3x4 크기의 2차원 배열 생성
int value = matrix[1][2]; // 두 번째 행, 세 번째 열의 요소에 접근
java코드 복사
int[][] matrix = {
{1, 2, 3, 4},
{5, 6, 7, 8},
{9, 10, 11, 12}
};
Java에서 배열은 기본적이면서도 강력한 자료 구조입니다. 배열의 크기가 고정된다는 점은 단점일 수 있지만, 특정 상황에서는 매우 효율적으로 사용할 수 있습니다. 배열을 잘 활용하면 데이터 관리와 알고리즘 구현이 훨씬 쉬워집니다