단일 표현식 함수
Coddy Kotlin 여정의 기초 섹션에 포함된 레슨. 93개 중 60번째.
함수에 단일 표현식만 포함되어 있는 경우, Kotlin은 더 간결한 구문을 제공합니다. 중괄호와 return 키워드를 사용하는 대신, 등호 뒤에 표현식을 바로 사용할 수 있습니다.
다음은 일반 함수와 단일 표현식으로 작성한 동등한 함수를 비교한 것입니다:
// 일반 함수
fun double(n: Int): Int {
return n * 2
}
// 단일 표현식 함수
fun double(n: Int): Int = n * 2두 버전은 동일하게 작동하지만, 두 번째 버전이 더 짧고 간단한 작업에서 읽기 쉽습니다.
Kotlin은 단일 표현식 함수의 반환 유형도 추론할 수 있으므로, 반환 유형을 완전히 생략할 수 있습니다:
fun double(n: Int) = n * 2
fun greet(name: String) = "Hello, $name!"이 문법은 조건식에서도 매우 훌륭하게 작동합니다:
fun max(a: Int, b: Int) = if (a > b) a else b
fun isEven(n: Int) = n % 2 == 0단일 표현식 함수는 간단한 계산, 유효성 검사 및 변환에 이상적입니다. 이러한 함수는 값을 반환하는 방식보다는 함수가 수행하는 작업에 집중하도록 코드를 깔끔하고 명확하게 유지해 줍니다.
챌린지
중급price와 percentage를 받아 할인된 가격을 반환하는 함수 calculateDiscount를 작성하세요.
할인을 적용한 후 최종 가격을 계산하려면 단일 표현식 함수 구문(중괄호와 return 대신 = 사용)을 사용하세요.
할인된 가격은 다음과 같이 계산됩니다: price - (price * percentage / 100)
매개변수:
price(Double): 원래 가격percentage(Int): 할인율 (0-100)
반환값: 할인을 적용한 후의 가격 (Double)
직접 해보기
fun calculateDiscount(price: Double, percentage: Int): Double {
// 여기에 코드를 작성하세요
}
이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.
기초의 모든 레슨
직접 연습해 보세요: Kotlin 플레이그라운드