- 동일한 자료형의 순차적 자료 구조
- 자료 유형이 같은 변수의 그룹
- 변수로 저장될 수 있는 모든 유형의 정보는 배열에 저장되는 항목이 될 수 있음
- 배열은 단일 변수보다 훨씬 더 복잡한 유형의 정보를 기록할 수 있으며, 생성 및 조작 방법 또한 복잡하지 않음
- 배열은 물리적 위치와 논리적 위치가 동일하다
- 이미 선언한 배열의 크기가 모자라면 새로 더 큰 크기의 배열을 선언해 기존 배열의 엘리먼트를 복사하여 사용한다
- 자바는 배열이 생성될 때 대괄호가 어디에 위치하는 지에 대해 융통성이 있음 -> 변수형이 아닌 변수명 뒤에 대괄호가 위치할 수 있음
- 모든 숫자 유형은 배열 0, char 배열은 '\0', bool 배열은 false가 초기값으로 설정
- String 배열과 다른 모든 객체들은 생성 시 초기값이 null로 설정
- 배열의 요소에 저장될 정보는 {} 사이에 위치하며, 각 요소는 쉼표로 구분
- 배열의 각 요소는 동일한 자료 유형이어야 함
- 배열은 다른 모든 변수와 동일한 방식으로 사용됨
int[] arr = new int[/* 배열의 크기 */];
int arr[] = new int[]; - 선언과 동시에 초기화를 할 때에만 new 연산자 생략가능
-
temp 변수 이용
-
Arrays 클래스(java.util) : 모든 변수형의 배열을 재배치할 수 있음
- import java.util.* 문장을 사용하여 프로그램 안에서 모든 java.util 클래스를 사용할 수 있게 함
- 배열을 생성
- Arrays 클래스의 sort() 메서드를 사용하여 배열을 재배치
String names[] = { "Lauren", "Audrina", "Heidi", "Whitney", "Brian" }; Arrays.sort(names);
- 얕은 복사(shallow copy) : 주소를 복사
System.arraycopy(src, srcPos, dest, destPos, length);- 2차원 이상의 배열
- 지도, 게임, 평면이나 공간을 구현할 때 사용
// 자료형 | 배열이름(변수명) | 행 개수 | 열 개수
int[][] arr = new int[][];- 2차원 배열의 출력 : 이중 for 문