식(expression)과 문(statement)

이수진·2024년 4월 29일

자바에서 if는 이지만 코틀린에서 if는 이다. 둘의 차이는 무엇일까?

문(statement)

  • 값을 만들지 않는다
  • 자신을 둘러싸고 있는 가장 안쪽 블럭의 최상위 요소이다

식(expression)

  • 값을 만들어낸다
  • 다른 식의 하위 요소로 연산에 쓰일 수 있다

코틀린에서는 대부분의 제어 구조가 식이다. 따라서 다음과 같이 제어문을 반환할 수 있다.

  • 자바
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

0개의 댓글