Kotlin에서의 변수는 큰 범위에서 두가지로 나뉜다.
val b = mutableListOf(1,2,3,4)
b.forEach { e -> println(e)}
b.add(5)
b.forEach { e -> println(e)}
Kotlin은 null에 예민한 언어이다.
기본적으로 변수에서 null을 허용하지 않기 때문에
값을 초기화 하지 않고 사용한다면 컴파일 에러가 발생한다.
fun main() {
var a: Int
println(a) // a의 값이 초기화 되지 않아 Error가 발생한다.
}
만약 변수에 null을 허용하고 싶다면 nullable변수로 선언해야한다.
nullable 변수는 아래 처럼 변수의 타입 뒤에 '?'를 붙여 선언한다.
fun main() {
var a: Int? = null //nullable 변수로 선언
println(a) // null 출력
}
그러나 nullPointerException이 발생 할 수 있어서 조심해서 사용해야한다.
Kotlin에서 형변환은 아래와 같은 함수들을 사용한다. (to + 자료형)
fun main() {
var a: Int = 123
var b: Long = a.toLong()
println(b)
}
코틀린은 위와 같은 명시적 형변환만 지원하고, 암시적 형 변환은 지원하지 않는다.
배열은 arrayOf() 함수를 사용하여 만들 수 있으며
비어있는 배열을 만들때에는 arrayOfNulls<>() 를 사용하여 만든다.
배열은 한번 선언해두면 size를 변경 할 수 없다.
fun main() {
var intArr = arrayOf(1,2,3) // [1,2,3]
var nullArr = arrayOfNulls<Int>(3) // [null, null, null]
println(intArr[0]) // 1
println(nullArr[0]) // null
}