본문 바로가기

IT/Java

[Java/자바] 4. 배열(Array)의 선언과 초기화

1. 배열이란?

인덱스를 이용하여 같은 자료형의 데이터를 모아 관리하는 것이다. 그렇다면 배열은 왜 사용할까?

 

한 회사 직원들의 사번을 관리하는 프로그램을 만든다고 가정하자. 이때 배열을 사용하지 않고 사번을 저장할 변수를 만든다면 String id1, id2, id3, ... 등 수많은 변수를 만들어야 할 것이다. 하지만 배열을 사용한다면 여러개의 변수를 만들 필요없이 더 간단하게 데이터를 관리 할 수 있다. 

 

 

2. 배열의 선언

배열의 선언은 타입[] 변수이름; 또는 타입 변수이름[]; 과 같이 선언한다. 하지만 이는 선언일 뿐, 배열을 사용하려면 초기화나 생성을 해줘야 하며 배열의 선언 시에는 배열 크기를 지정해줄 수 없다.

 

int array1[];
int[] array2;

int array3[5]; // 오류 - 선언 시 배열 크기 정할 수 없음

 

3. 배열의 생성

초기화 없이 메모리 영역을 할당해주는 것을 의미하며, new연산자를 이용한다 배열이 생성되면 배열의 자료형이 숫자형일 경우 0 또는 0.0, 참조형일 경우 null로 초기화되어 바로 배열을 사용할 수 있다.

 

int array1[] = new int[5];
String[] array2 = new String[3];

int array3[];
array3 = new int[3];

 

4. 배열의 초기화

배열을 선언한 후 초기값을 지정해주는 것이다. 배열을 초기화시키면 메모리 영역이 자동으로 할당되기 때문에, new연산자를 사용하지 않고 배열을 선언과 동시에 초기화를 시켜주면 바로 사용이 가능하다.

 

String id[] = {"A001", "A002", "A003", "A004"};
int oddNum[] = {1, 3, 5, 7, 9};

int evenNum[] = new int [3]; //배열 생성 후 인덱스를 이용해 초기화 시킬 수 있음

evenNum[0] = 2;
evenNum[1] = 4;
evenNum[2] = 6;
evenNum[3] = 8;

 

5. 배열의 크기

배열의 크기는 배열이름.length 를 이용해서 얻을 수 있다.

 

int a[] = new int[3];

for(int i =0; i < a.length; i++){
	a[i] = i;
}

System.out.println(Arrays.toString(a)); // Arrays.toString - 배열의 요소를 문자열로 반환

 

출력 결과는 다음과 같다.

 

 

 

 

 

 

 

 

*해당 게시글은 개인 공부 목적으로 작성되었음을 알립니다

 

참고: 자바의 정석, Java 프로그래밍