변수(Variables)

Kotlin은 강력한 타입 추론을 가지고 있다. 변수의 타입을 명시적으로 선언할 수 있지만 일반적으로는 컴파일러가 유추하여 작업을 수행하도록 한다. Kotlin은 불변성을 강제하지는 않지만 본질적으로 var보다 val를 사용을 권장한다.

1
2
3
4
5
6
fun main() {
    var a: String = "initial";    //1
    println(a)
    val b: Int = 1                //2
    val c = 3;                    //3
}
1
2
🖥️출력
initial
  1. 변경 가능한 변수를 선언하고 초기화한다.
  2. 변경할 수 없는 변수를 선언하고 초기화 한다.
  3. 변경할 수 없는 변수를 타입 지정 없이 선언하고 초기화한다. 컴파일러는 Int타입으로 유추한다.
1
2
3
4
fun main() {
    var e: Int  //1
    println(e)  //2
}
1
2
🖥️출력
Kotlin: Variable 'e' must be initialized
  1. 초기화 없이 변수를 선언한다.
  2. 변수를 사용하려 시도했기 때문에 컴파일러는 Kotlin: Variable 'e' must be initialized 에러를 출력한다.

변수 초기화를 할 때에는 자유롭게 선택할 수 있지만 처음 읽기 전에 초기화를 해야 한다.

1
2
3
4
5
6
7
8
9
10
11
12
fun someCondition() = true

fun main() {
    val d: Int             //1
    if(someCondition()){
        d = 1              //2
    }else{
        d = 2              //2
    }

    println(d)             //3
}
1
2
🖥️ 출력
1
  1. 초기화하지 않고 변수를 선언한다.
  2. 어떤 조건에 따라 다른 값으로 변수를 초기화한다.
  3. 변수는 이미 초기화 되었기 때문에 읽을 수 있다.

Kotlin 카테고리 내 다른 글 보러가기

댓글남기기