CodeBlanks Logo Icon CodeBlanks

Arrow functions

=> ile kısa fonksiyon yazmayı öğrenirsin.

Arrow functions

Tek bir ifade döndüren fonksiyonları kısa yazmanın yolu ok fonksiyonu (arrow function)'dur. => operatörü gövdeyi tek satırda yazar. Örnek: int square(int n) => n * n;.

Bu yazım int square(int n) { return n * n; } ile tamamen eşdeğerdir. Ok'tan sonraki ifade otomatik olarak döndürülür; return yazmana gerek yoktur.

Ok fonksiyonu yalnızca tek bir ifade içerebilir; birden çok satır gerekiyorsa süslü parantezli klasik yazımı kullanmalısın. Kısa dönüşümler ve hesaplar için idealdir.

Ok ile klasik karşılaştırması

Aynı fonksiyonu iki biçimde yazabilirsin. Klasik: int double(int n) { return n * 2; }. Ok: int double(int n) => n * 2;. İkisi de aynı işi yapar.

Ok fonksiyonunda return yazılmaz; ifade otomatik döner. Klasik biçimde return şarttır, aksi halde derleyici hata verir.

Hangisini seçeceğin gövde uzunluğuna bağlıdır: tek satır bitsin istiyorsan ok, birden çok adım varsa süslü parantez. İkisi yan yana okunabilir; Dart topluluğu kısa fonksiyonlarda ok tercih eder.

Uygulama Ok ile iki katına çıkar

Bir twice(int n) ok fonksiyonu tanımla; gövde n * 2 olsun. main içinden print(twice(21)) çağrısını ekle.

Başlangıç kodu

main.dart
void main() {
  // twice ok fonksiyonunu tanımla

  // sonuçu yazdır
}

Örnek çözüm

main.dart
int twice(int n) => n * 2;

void main() {
  print(twice(21));
}

Beklenen çıktı

42

Soru ve cevaplar

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

1 Ok ile yaz

Soru
int square(int n) ____ n * n;
Cevap
int square(int n) => n * n;

Açıklama: => ok fonksiyonu işaretidir.

2 Ok fonksiyonunda return?

  • Yazılmaz, otomatik döner Doğru cevap
  • Yazılır ve zorunludur
  • Sadece void'de yazılır
  • Hata verir

Açıklama: ok fonksiyonunda return yazılmaz, ifade kendiliğinden döner.

3 Yazımları eşleştir

Kavram Anlamı
int square(int n) { return n*n; } Klasik biçim
int square(int n) => n * n; Ok biçim
return Klasikte zorunlu
=> Ok işareti

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