룬아님의 취중코딩

Kotlin Bootcamp for Programmers 5. 왜 (거의) 모든 것들은 value를 가지고 있을까? 본문

개발/Kotlin

Kotlin Bootcamp for Programmers 5. 왜 (거의) 모든 것들은 value를 가지고 있을까?

룬아님 2019. 10. 4. 14:27

일부 다른 언어에는 값이없는 코드 줄인 명령문이 있습니다. 하지만 코틀린에서 거의 모든 것에 value가 있습니다. (해당 값이 kotlin.Unit 인 경우에도 마찬가지입니다.)

 

1. isln이라는 변수에 println()을 할당하고 결과를 확인합니다. (println ()은 값을 반환하지 않으므로 kotlin.Unit을 반환합니다.)

// Will assign kotlin.Unit
val isUnit = println("This is an expression")
println(isUnit)

 

2. 프로그램을 실행하면 첫 번째 println ()은 "This is a expression"문자열을 출력합니다. 두 번째 println ()은 첫 번째 println () 문의 값, 즉 kotlin.Unit을 출력합니다.

⇒
This is an expression
kotlin.Unit

 

3.코틀린에서는 if 표현식의 값을 즉시 사용할 수 있습니다.

val temperature = 10
val isHot = if (temperature > 50) true else false
println(isHot)
⇒ false

 

4. 문자열 템플릿에서 표현식의 값을 사용할 수 있습니다.

val temperature = 10
val message = "The water temperature is ${ if (temperature > 50) "too warm" else "OK" }."
println(message)
⇒ The water temperature is OK.

 

참고 : 루프는 "모든 것에 value가있다"는 예외입니다. 
for 루프 또는 while 루프에 대한 합리적인 값이 없으므로 값이 없습니다.
루프 값을 무언가에 할당하려고하면 컴파일러에서 오류가 발생합니다.
반응형
Comments