CodeBlanks Logo Icon CodeBlanks

Özet - Fonksiyonlar

ifade gövdesi, default ve named argümanları birleştirerek bir hesap yardımcı yazarsın.

Özet: ifade gövdesi, default ve named birlikte

Bu özette ifade gövdesi (=), default parametre ve isimli argümanları birleştireceksin. Tek satırlık fun greet(name: String, msg: String = "Merhaba") = println("$msg $name") tanımı hem kısa hem de esnektir.

fun greet(name: String, msg: String = "Merhaba") =
    println("$msg $name")
greet("Ayşe")                  // Merhaba Ayşe
greet(name = "Ayşe", msg = "Selam")  // Selam Ayşe

Bu üç özellik birlikte, hem kısa yazım hem de çağrı tarafında esneklik sağlar; fonksiyonun kullanım biçimleri tek tanımda toplanır.

Uygulama İfade gövdesi + default + isimli çağrı

Bir fun greet(name: String, msg: String = "Merhaba") = println("$msg $name") tanımla (ifade gövdesi). main içinden greet(name = "Ayşe") şeklinde isimli argümanla çağır.

Başlangıç kodu

Main.kt
fun main() {
    // greet fonksiyonunu name = "Ayşe" ile çağır
}

// greet fonksiyonunu ifade gövdesi ile tanımla: msg varsayılan "Merhaba"
// Gövde println("$msg $name") döndürür (Unit)

Örnek çözüm

Main.kt
fun main() {
    greet(name = "Ayşe")
}

fun greet(name: String, msg: String = "Merhaba") = println("$msg $name")

Beklenen çıktı

Merhaba Ayşe

Uygulama İfade gövdesi + default ile add

Bir fun add(a: Int, b: Int = 0): Int = a + b tanımla (ifade gövdesi). main içinden println(add(5)) ile sonucu yazdır.

Başlangıç kodu

Main.kt
fun main() {
    // add(5) çağrısını println ile yazdır
}

// add fonksiyonunu ifade gövdesi ile tanımla: b varsayılan 0, a + b döner

Örnek çözüm

Main.kt
fun main() {
    println(add(5))
}

fun add(a: Int, b: Int = 0): Int = a + b

Beklenen çıktı

5

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Hangi tanım üç özelliği de birleştirir?

  • fun greet(name, msg) { println("$msg $name") }; greet("Ayşe")
  • fun greet(name: String = "Ayşe"): String = "Hi"
  • fun greet(name: String) = println(name); greet(name = "Ayşe")
  • fun greet(name: String, msg: String = "Hi") = println("$msg $name"); greet(name = "Ayşe") Doğru cevap

Açıklama: İfade gövdesi (=), default msg ve isimli çağrı birlikte.

2 Boşluğu doldur: isimli argüman

Soru
greet(name ____ "Ayşe", msg = "Selam")
Cevap
greet(name = "Ayşe", msg = "Selam")

Açıklama: greet(name = "Ayşe", msg = "Selam") isimli çağrıdır.

Başlangıç bölümündeki tüm dersler