JAVA - 1차원 배열

김동규·2022년 11월 4일

JAVA

목록 보기
26/38

배열이란?

배열(array)은 같은 타입의 변수들로 이루어진 유한 집합으로 정의할 수 있다.
배열을 구성하는 각각의 값을 배열 요소(element)라고 하며, 배열에서의 위치를 가리키는 숫자를 인덱스(index)라고 합니다.
자바에서 인덱스는 언제나 0부터 시작하며, 0을 포함한 양의 정수만을 가질 수 있다.
배열은같은 종류의 데이터를 많이 다뤄야 하는 경우에 사용할 수 있는 가장 기본적인 자료 구조이다.
배열은 선언되는 형식에 따라 1차원 배열, 2차원 배열뿐만 아니라 그 이상의 다차원 배열로도 선언할 수 있다.
하지만 현실적으로 이해하기가 쉬운 2차원 배열까지가 많이 된다.

1차원 배열

1차원 배열은 가장 기본적인 배열로 다음과 같은 문법에 따라 선언한다.

문법
1. 타입[] 배열이름;
2. 타입 배열이름[];

🤚자바에서는 배열을 만들기 위해 위의 두 가지 방법을 모두 사용할 수 있지만, 될 수 있으면 첫 번째 방법만을 사용하는 것이 좋다.

위와 같이 선언된 배열은 new 키워드를 사용하여 실제 배열로 생성할 수 있다.

문법
배열이름 = new 타입[배열길이];

예제를 봐보자

int[] grade1 = new int[3]; // 길이가 3인 int형 배열의 선언 및 생성
int[] grade2 = new int[3]; // 길이가 3인 int형 배열의 선언 및 생성

grade1[0] = 85; // 인덱스를 이용한 배열의 초기
grade1[1] = 65;
grade1[2] = 90;

grade2[0] = 85; // 배열의 길이보다 적은 수의 배열 요소만 초기화

for (int i = 0; i < grade1.length; i++) {
    System.out.print(grade1[i] + " "); // 인덱스를 이용한 배열로의 접근
}

 

for (int i = 0; i < grade2.length; i++) {
    System.out.print(grade2[i] + " "); // 인덱스를 이용한 배열로의 접근
}

결과
85 65 90
85 0 0

위의 예제처럼 0부터 시작하는 인덱스(index)를 이용하면 각각의 배열 요소에 따로 접근할 수 있다.

또한, 배열 grade2처럼 배열의 길이보다 적은 수의 배열 요소만을 초기화할 경우, 나머지 배열 요소들은 배열의 타입에 맞게 자동으로 초기화된다.

배열의 초기화방법도 예시로 알아보자

int[] grade1 = {70, 90, 80};          // 배열의 선언과 동시에 초기화할 수 있음.

int[] grade2 = new int[]{70, 90, 80}; // 배열의 선언과 동시에 초기화할 수 있음.

int[] grade3;

// grade3 = {70, 90, 80};             // 이미 선언된 배열을 이 방법으로 초기화하면 오류가 발생함.

int[] grade4;

grade4 = new int[]{70, 90, 80};       // 이미 선언된 배열은 이 방법으로만 초기화할 수 있음.
profile
HigasiHosi

0개의 댓글