Language/Kotlin In Action

[Kotlin In Action] 변수

by Donghwan 2021. 4. 13.

코틀린에서 변수를 선언할 때, 자바와 달리 자료형 대신 키워드로 변수 선언을 시작합니다. 또 상황에 따라 뒤에 오는 타입을 명시하거나 생략하게 허용합니다.

변수를 선언하는 키워드는 두가지가 있습니다.

var

  • variable라는 의미를 가집니다.
  • mutable(가변) 참조를 저장하는 변수로 활용됩니다.
  • 값이 바뀔 수 있습니다.
  • 자바의 일반변수에 해당합니다.
  • 한번 초기화하면 타입이 고정됩니다. Int 타입으로 처음 초기화 되면 Int형 변수가 됩니다.

val

  • value라는 의미를 가집니다.
  • immutable(불변) 참조를 저장하는 변수로 활용됩니다.
  • val로 선언된 변수는 일단 초기화하고 나면 재대입이 불가능합니다.
  • 자바의 final에 해당됩니다.
  • 초기화 조건(분기)에 따라 다른 여러 값으로 초기화 할 수 있습니다.
  • 참조 자체는 불변일지라도 그 참조가 가리키는 객체의 내부 값은 변경될 수 있습니다.

var과 val의 비교

//Impossible
val example = arrayListOf("")
example = arrayListOf() //Val cannot be reassigned 에러가 발생합니다.

//Possible
//참조 자체는 불변일지라도 그 참조가 가리키는 객체의 내부 값은 변경될 수 있습니다.
val example = arrayListOf("")
example.add("")

//Possible
var example = arrayListOf("")
example = arrayListOf()

 

[ 출처 : Kotlin In Action ]

728x90
반응형

'Language > Kotlin In Action' 카테고리의 다른 글

[Kotlin In Action] 인터페이스  (0) 2021.04.22
[Kotlin In Action] 가변 인자  (0) 2021.04.22
[Kotlin In Action] 확장함수  (0) 2021.04.21
[Kotlin In Action] 문자열 템플릿  (0) 2021.04.13
[Kotlin In Action] 함수  (0) 2021.04.13

댓글