Kotiln
코틀린과 삼항 연산자
블린더르
2021. 3. 19. 09:31
결론부터 말하자면 코틀린에는 삼항 연산자가 존재하지 않습니다.
그 대신 if - else
로 대체하거나 when
을 사용하여 표현할 수 있습니다.
val a = if(b) b else c
위 처럼 변수에 값을 넣는 방법으로도 사용할 수 있습니다.
왜 삼항연산자가 없는 가를 말하려면 코틀린의 특성을 이야기해야 합니다.
코틀린에서 if 는 문(expression
이 아닌 식(statement)
입니다.
식은 값을 만들어 내며 다른 식의 하위 요소로 계산에 참여할 수 있습니다. 따라서 위의 코드 처럼 변수에 값을 넣는 방식으로 사용할 수 있는 것입니다.
그렇기 때문에 삼항연산자와 if
의 역할이 중복되기 때문에 코틀린에서는 빠진 것이라고 추측할 수 있습니다.
코틀린 공식 문서(https://kotlinlang.org/docs/control-flow.html ) 에서는 if 가 역할을 잘 수행하고 있기 때문에 삼항 연산자가 존재하지 않는다고 말합니다.
https://discuss.kotlinlang.org/t/ternary-operator/2116/171 에서 코틀린에서 삼항연산자가 왜 없는지에 대한 토론의 요약을 볼 수 있습니다.
참고
코틀린 인 액션
반응형