- 배열은 같은 타입의 여러 변수를 하나의 묶음으로 다루는 것이다.
- 배열은 각 저장공간이 연속적으로 배치되어 있다.
- 배열 선언은 타입에 할 수도 있고, 변수명에 쓸 수도 있는데, 전자는 Java의 관례상 표준이고, 후자는 C언어 스타일의 선언이다.
- 배열은 new로 생성을 해줘야 사용할 수 있다.
- 배열의 각 저장공간을 배열의 요소(element)라고 하며, 배열의 요소마다 붙여진 일련번호(index)로 각 요소에 접근이 가능하다. 인덱스는 0부터 시작한다.
- 이러한 이유 때문에 for문을 0부터 시작하는 것이다.
- 인덱스의 범위를 벗어난 위치를 조회하려고 할 경우 예외가 발생한다.
ArrayIndexOutOfBoundsException
- 배열의 길이를 정해주어야 한다. 길이가 0인 배열도 만들 수 있다.
- 자바에서는 배열의 길이를 별도로 관리해서
배열이름.length
로 길이에 대한 정보를 얻을 수 있다. - 배열의 길이는 변경 불가능하다. 따라서 다른 방법을 사용해야 한다.
System
의arraycopy()
메서드를 사용한다던지(배열은 연속된 공간에 저장되기 때문에 이 방식이 더 효율적이다.) - 기본형 배열은 저장공간에 값이 저장되지만, 참조형 배열은 저장공간에 참조하는 주소가 저장된다.(주소는 4byte)
- 객체지향언어에서는 데이터와 그에 관련된 기능을 하나의 클래스에 묶어서 다룰 수 있게 한다. 즉, 서로 관련된 것들끼리 데이터와 기능을 구분하지 않고 함께 묶는다.
- 다차원 배열은 가변 배열을 구성할 수 있다.