동일한 자료형을 가진 데이터들을 나열한 구조이다.
val 변수명 = arrayOf<Type>(값1, 값2, 값3)
자료형은 생략 가능하며, 배열의 크기는 항목의 개수에 따라 자동으로 결정된다.
arrayOf()
를 사용할 경우에는 파라미터로 받은 값들을 토대로 자동으로 자료형을 추론한다. 또한, 처음 배열을 초기화할 때 여러 종류의 자료형을 섞어서 초기화할 수도 있다.
자료형ArrayOf()
해당 자료형만 인자로 들어올 수 있다.
✍️ 예제
// 자료형 생략 O
val fruits = arrayOf("banana", "Orange", "watermelon")
// 자료형 생략 X
val fruits2 : Array<String> = arrayOf("banana", "Orange", "watermelon")
//arrayOf()
val arr1 = arrayOf(1, "2", 3L)
//자료형ArrayOf()
val arr2 = intArrayOf(1, "2", 3L) // error
var 변수명 = Type+Array(크기, {초기값})
Array()
의 경우에는 그 뒤에 중괄호로 배열 원소들의 초기값을 추가로 입력해야 한다. 만약 중괄호 내부에 아무것도 입력하지 않는다면 Unit 배열이 생성된다.
자료형Array()
의 경우에는 중괄호로 배열 원소들의 초기값을 입력하는 것은 선택 사항이며 입력하지 않을 경우 숫자형은 0, 문자형은 공백문자, 논리형은 false로 초기화된다.
✍️ 예제
val arr1 = Array(3) { 1 } // [1, 1, 1]
val arr2 = IntArray(3) // [0, 0, 0]
val arr3 = BooleanArray(3) { true } // [true, true, true]
val arr4 = Array(5) {} // Unit 배열
val arr5 = Array(4) // 컴파일 에러
만약, 크기가 4인 정수 배열을 생성하고 각 요소를 1부터 시작하여 순차적으로 초기화할 경우에는 아래 처럼 작성한다.
val nums = IntArray(4) { index -> index + 1 }