CodeBlanks Logo Icon CodeBlanks

İfade gövdesi

= ile ifade gövdeli fonksiyon yazmayı öğrenirsin.

İfade gövdesi: = ile kısa tanım

Tek bir ifade döndüren fonksiyonlar blok gövde yerine = ile kısa yazılabilir. fun double(x: Int): Int = x * 2, fun double(x: Int): Int { return x * 2 } ile aynı anıma gelir.

fun double(x: Int): Int = x * 2
val result = double(7)  // 14

Bu biçimde return yazılmaz; sağ taraf otomatik olarak döndürülür. Dönüş türü de çıkarılabilir: fun double(x: Int) = x * 2.

Ne zaman = ne zaman { }?

Tek bir ifade döndüren kısa fonksiyonlar için = daha okunaklıdır. Birden çok deyim, koşul ya da döngü içeriyorsa { } blok gövde kullanılır. İkisi de aynı sonucu verebilir; seçim biçem meselesidir.

// ifade gövdesi
fun half(x: Int): Int = x / 2

// blok gövde
fun half(x: Int): Int {
    val result = x / 2
    return result
}

İfade gövdesinde dönüş türü çıkarılabilir; blok gövdede return açıkça yazılmalıdır.

Uygulama double fonksiyonunu ifade gövdesi ile yaz

Bir fun double(x: Int): Int = x * 2 tanımla (ifade gövdesi). main içinden println(double(7)) ile sonucu yazdır.

Başlangıç kodu

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

// double fonksiyonunu ifade gövdesi ile tanımla: x * 2

Örnek çözüm

Main.kt
fun main() {
    println(double(7))
}

fun double(x: Int): Int = x * 2

Beklenen çıktı

14

Soru ve cevaplar

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

1 Tanım biçimini rolüyle eşleştir

Kavram Anlamı
fun f() = x İfade gövdesi
fun f() { } Blok gövdesi
: Int Açık dönüş türü
return x Blok içinde döndürme

2 Boşluğu doldur: ifade gövdesi

Soru
fun double(x: Int): Int ____ x * 2
Cevap
fun double(x: Int): Int = x * 2

Açıklama: = x * 2 ifade gövdesini tanımlar.

3 fun square(x: Int) = x * x ne döner?

  • Unit (dönüş türü yok)
  • String
  • Exception fırlatır
  • Int (çıkarılan tür) Doğru cevap

Açıklama: Dönüş türü yazılmasa bile x * x Int olduğu için Int döner.

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