자바에서 if는 문이지만 코틀린에서 if는 식이다. 둘의 차이는 무엇일까?
코틀린에서는 대부분의 제어 구조가 식이다. 따라서 다음과 같이 제어문을 반환할 수 있다.
public int max(int a, int b) {
if(a > b){
return a
} else {
return b
}
}
fun max(a:Int, b:Int): Int{
return if(a > b) a else b
}
그리고 함수 본문이 식 하나로 표현되면 =를 이용해 더 간단히 표현할 수 있다.
fun max(a:Int, b:Int) = if(a > b) a else b