달나라 노트

Kotlin - Variable 본문

Kotlin

Kotlin - Variable

CosmosProject 2021. 3. 15. 02:00
728x90
반응형

 

 

 

 

 

Original source = play.kotlinlang.org/byExample/01_introduction/01_Hello%20world

 

 

 

 

이번엔 Kotlin에서의 변수 체계를 알아봅시다.

 

 

 

 

var variable_name: data_type = value
val variable_name: data_type = value

Kotlin의 변수를 만들기 위해선 변수명 앞에 var 또는 val 키워드를 붙인 후 값을 할당할 수 있습니다.

(변수의 생성과 동시에 값을 할당하는 것을 initialize라고 합니다.)

 

변수의 옵션이 var, val 두 가지가 존재하는데 뭐가 다를까요?

var 키워드로 변수를 설정하면 이 변수는 추후에 다른 값을 reassign할 수 있습니다.

val 키워드로 변수를 설정하면 immutable(불변) variable이 되어서 다른 값을 reassign할 수 없습니다.

 

 

 

 

 

 

 

fun main() {
    var x: String = "Test variable" // 1
    println(x)

    x = "Reassigned Test variable" // 2
    println(x)

    val y: Int = 1 // 3
    val z = 10 // 4
    println(y)
    println(z)

    // y = 10 // Error 발생. Immutable variable은 reassign 불가. // 5

    var e: Int // 6
    // println(e) // Error 발생 // 7
    e = 100 // 8
    println(e) // 9
}


-- Result
Test variable
Reassigned Test variable
1
10
100

 

위 내용을 봅시다.

 

1. var키워드를 이용해 변수 x를 선언하고 값을 할당하고 있습니다.(initialize)

 

2. var키워드는 재할당(reassign)이 가능합니다.

 

3. val 키워드를 이용해 변수 y를 선언하고 값을 할당하고 있습니다.

 

4. 3번과 동일하지만 변수의 data type을 명시하지 않았습니다. 이 경우 kotlin은 자동으로 할당된 값을 인식해서 이것이 int라는 것을 파악합니다.

 

5. 변수 y는 val 키워드로 생성된 immutable variable이기 때문에 재할당할 경우 에러가 발생합니다.

 

6. 변수를 선언했지만 값 할당은 하지 않고있습니다. 이렇게 변수만 설정해둘 수 있습니다. 변수를 선언만 하고 값 할당은 하지 않으려면 해당 변수의 자료형을 입력해줘야합니다.

 

7. 하지만 아무 값이 할당되지 않은 변수를 조회하려면 에러가 발생합니다.

 

8, 9. 변수 생성 후 아무 값을 할당하지 않아도 되지만 변수를 조회하기 전에 반드시 값을 할당해줘야 합니다.

 

 

 

Tip.

1. 변수는 선언할 때 자료형이 정해집니다.

자료형을 명시하지 않으면 할당되는 값에 의해 자동으로 자료형이 결정되며,

자료형을 명시하고 초기화하지 않으면 명시된 자료형으로 해당 변수의 자료형이 정해집니다.

또한 이것은 변경될 수 없습니다.

예를들어 int 자료형인 변수에 문자를 할당할 수 없습니다.

 

 

 

 

 

 

 

728x90
반응형

'Kotlin' 카테고리의 다른 글

Kotlin - Inheritance (상속)  (0) 2021.03.15
Kotlin - Class  (0) 2021.03.15
Kotlin - Null  (0) 2021.03.15
Kotlin - Functions  (0) 2021.03.15
Kotlin - Hello World!  (0) 2021.03.15
Comments