CodeBlanks Logo Icon CodeBlanks

Map

Map<K,V> ile anahtar-değer koleksiyonunu öğrenirsin.

Map<K,V>

Map<K,V> anahtar-değer çiftlerini saklar. Her anahtar benzersizdir; bir anahtara karşılık bir değer gelir. K anahtar tipini, V değer tipini belirtir.

Map oluşturmak: var puanlar = <String, int>{'Ayşe': 90, 'Mehmet': 85};. Burada anahtarlar String, değerler int. Yeni çift eklemek için puanlar['Alex'] = 78; yazılır.

Değere erişmek için puanlar['Ayşe'] kullanılır. length çift sayısını verir. Map, isim-yaş, ürün-fiyat gibi eşleştirmeler için idealdir.

Map işlemleri

Map'e çift eklemek için map['anahtar'] = deger yazılır. Anahtar zaten varsa değer güncellenir. Değere erişmek için yine map['anahtar'] kullanılır.

Örnek: var p = <String, int>{'Ayşe': 90}; p['Alex'] = 78; print(p);. Çıktı: {Ayşe: 90, Alex: 78}. p.length ise 2 verir.

Map, hızlı arama sağlar. Bir anahtarla değere O(1) ortalamada erişilir. Bu, büyük veri setlerinde listelere göre çok daha verimlidir.

Uygulama Puan tablosu oluştur

<String, int>{'Ayşe': 90, 'Mehmet': 85} ile bir puan tablosu oluştur. scores['Alex'] = 78 ile yeni çift ekle. Önce map'i, sonra uzunluğu yazdır.

Başlangıç kodu

main.dart
void main() {
  // String anahtar, int değer olan bir map oluştur
  // yeni anahtar ekle, map'i ve uzunluğunu yazdır
}

Örnek çözüm

main.dart
void main() {
  var scores = <String, int>{'Ayşe': 90, 'Mehmet': 85};
  scores['Alex'] = 78;
  print(scores);
  print(scores.length);
}

Beklenen çıktı

{Ayşe: 90, Mehmet: 85, Alex: 78}
3

Soru ve cevaplar

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

1 Map parçalarını eşleştir

Kavram Anlamı
<String, int> Anahtar ve değer tipi
{'Ayşe': 90} Anahtar-değer çifti
scores['Alex'] = 78 Yeni çift ekleme
length Çift sayısı

2 Map'te aynı anahtara iki değer yazarsan ne olur?

main.dart
var m = <String, int>{};
m['a'] = 1;
m['a'] = 2;
  • İki 'a' anahtarı olur
  • Hata fırlatır
  • İkinci değer birincinin üzerine yazar Doğru cevap
  • Değerler toplanır

Açıklama: aynı anahtara atama önceki değerin üzerine yazar.

3 Map'e çift ekle

Soru
var puanlar = <String, int>{'Ayşe': 90};
____['Alex'] = 78;
Cevap
var puanlar = <String, int>{'Ayşe': 90};
puanlar['Alex'] = 78;

Açıklama: puanlar['Alex'] = 78 ile yeni çift eklenir.

Orta seviye bölümündeki tüm dersler