Menu
Coddy logo textTech

기본값

Coddy Kotlin 여정의 기초 섹션에 포함된 레슨. 93개 중 59번째.

때로는 호출자가 함수 매개변수를 제공하지 않을 때 해당 매개변수에 대체값이 사용되기를 원할 수 있습니다. Kotlin에서는 매개변수 정의에 기본값을 직접 할당할 수 있습니다.

fun greet(name: String = "Guest") {
    println("Hello, $name!")
}

fun main() {
    greet("Alice")
    greet()
}
// 출력:
// Hello, Alice!
// Hello, Guest!

인수 없이 greet()를 호출하면 Kotlin은 기본값 "Guest"를 사용합니다. 이를 통해 함수가 더 유연해집니다. 필요할 때 호출자가 동작을 사용자 지정하거나 합리적인 기본값을 그대로 사용할 수 있습니다.

기본값이 있는 매개변수와 기본값이 없는 매개변수를 함께 사용할 수 있습니다. 기본값이 있는 매개변수는 일반적으로 마지막에 옵니다:

fun createUser(name: String, role: String = "member"): String {
    return "$name ($role)"
}

fun main() {
    println(createUser("Alice", "admin"))
    println(createUser("Bob"))
}
// 출력:
// Alice (admin)
// Bob (member)

이름이 지정된 인수는 기본값과 함께 사용할 때 특히 유용합니다. 다른 매개변수에 값을 제공하면서 일부 매개변수를 건너뛸 수 있습니다.

fun format(text: String, uppercase: Boolean = false, prefix: String = "") {
    val result = if (uppercase) text.uppercase() else text
    println("$prefix$result")
}

fun main() {
    format("hello", prefix = "-> ")
}
// 출력: -> hello
challenge icon

챌린지

중급

buildGreeting(name: String, greeting: String = "Hello"): String을 구현하세요. greeting, name! 형식으로 인사말을 반환하세요. 제공된 테스트 드라이버는 함수를 두 번 호출합니다. 한 번은 이름만 사용하고, 한 번은 이름과 명시적인 인사말을 함께 사용합니다. 함수 안에 main을 작성하거나 출력하지 마세요. 인사말이 누락된 경우 기본값 "Hello"를 사용해야 합니다.

직접 해보기

fun buildGreeting(name: String, greeting: String): String {
    // 매개변수에 기본값을 추가하고 인사말을 반환하세요.
    TODO("Build the greeting")
}
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

기초의 모든 레슨

직접 연습해 보세요: Kotlin 플레이그라운드