Menu
Coddy logo textTech

Varsayılan Değerler

Coddy'nin Kotlin Journey'sinin Temel Bilgiler bölümünün bir parçası. Ders 59 / 93.

Bazen bir işlev parametresinin, çağıran taraf bir değer sağlamadığında yedek bir değere sahip olmasını istersiniz. Kotlin, varsayılan değerleri doğrudan parametre tanımında atamanıza olanak tanır.

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

fun main() {
    greet("Alice")
    greet()
}
// Çıktı:
// Hello, Alice!
// Hello, Guest!

greet() bir bağımsız değişken olmadan çağrıldığında Kotlin, varsayılan "Guest" değerini kullanır. Bu, işlevleri daha esnek hâle getirir; çağıranlar gerektiğinde davranışı özelleştirebilir veya makul varsayılan değerlere güvenebilir.

Varsayılan değerleri olan ve olmayan parametreleri birlikte kullanabilirsin. Varsayılan değerleri olan parametreler genellikle en sonda yer alır:

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

fun main() {
    println(createUser("Alice", "admin"))
    println(createUser("Bob"))
}
// Çıktı:
// Alice (admin)
// Bob (member)

Adlandırılmış bağımsız değişkenler, varsayılan değerlerle birlikte özellikle kullanışlı hâle gelir. Diğerlerini sağlarken bazı parametreleri atlamanıza olanak tanırlar:

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 = "-> ")
}
// Çıktı: -> hello
challenge icon

Görev

Orta

buildGreeting(name: String, greeting: String = "Hello"): String uygulamasını gerçekleştirin. greeting, name! biçiminde bir selamlama döndürün. Sağlanan test sürücüsü işlevinizi iki kez çağırır: bir kez yalnızca adla, bir kez de bir ad ve açıkça belirtilmiş bir selamlamayla. İşlevin içinde main yazmayın veya çıktı vermeyin. Eksik selamlama varsayılan olarak "Hello" değerini kullanmalıdır.

Kendin dene

fun buildGreeting(name: String, greeting: String): String {
    // Parametreye varsayılan değeri ekle ve selamlamayı döndür.
    TODO("Build the greeting")
}
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Temel Bilgiler bölümündeki tüm dersler

Kendi başına pratik yap: Kotlin playground