Dart Dilinde Kümeler (Sets)
Dart dilinde kümeler (sets), aynı türden farklı değerlerin sırasız bir listesini oluşturmak için kullanılan bir veri tipidir.
Dart Dilinde Kümeler
Kümeler liste veri tipine çok benzer, ancak listeden farklı olarak sırasızdır ve yinelenen elemanlara izin vermez. Yani kümede kullanılan her eleman benzersiz olmalıdır.
Dart’ta kümeler, tek bir değişkende tek bir veri türünün farklı değerlerini tutmak istenildiğinde kullanışlıdır ve küme elemanlarının sırası önemli değildir.
Kümeler, Map ile benzer bir şekilde süslü parantezlerle {} yazılır. Bu yüzden küme veri tipi bildirilmezse Dart bunu otomatik olarak Map veri tipi olarak tanımlar.
1 2 3 4 5 |
void main() { var programlamaDili = <String>{"C", "C++", "Python", "Dart"}; print("Dart Kümeler Konusu"); print(programlamaDili); } |
Çıktı:
Dart Kümeler Konusu
{C, C++, Python, Dart}
Dart’ta Kümelere Eleman Ekleme
Dart’ta, verilen kümeye eleman(lar) eklemek için add() veya addAll() metotları kullanılır. Bunlardan add () metotu, mevcut bir kümeye tek bir eleman eklemek için kullanılırken, addAll ise ilgili kümeye birden çok eleman eklemek için kullanılır. Ayrıca eğer kümeye yinelenen değer yok eklenmeye çalışılırsa bu yok sayılır.
1 2 3 4 5 6 7 8 |
void main() { var programlamaDilleri = {"C", "C++", "Python", "Dart"}; var dil = <String>{}; dil.add("Flutter"); print(dil); dil.addAll(programlamaDilleri); print(dil); } |
Çıktı:
{Flutter}
{Flutter, C, C++, Python, Dart}
Dart’ta Küme Elemanını Dizinden Çağırmak
Küme elemanını belirtilen dizin konumunda almak için elementAt() metodu kullanılır. Bir Kümenin indekslenmesi, sıfırdan (0) başlar ve kümenin son elemanına kadar devam eder. Maksimum indeksten daha büyük bir sayı girerseniz hata verecektir.
1 2 3 4 5 |
void main() { var programlamaDilleri = {"C", "C++", "Python", "Dart"}; var dil = programlamaDilleri.elementAt(3); print(dil); } |
Çıktı: Dart
Dart’ta Küme Elemanlarının Sayısını Bulma
Dart’ta length özelliği, bir kümedeki eleman sayısını bulmak için kullanılabilir.
1 2 3 4 5 |
void main() { var programlamaDilleri = {"C", "C++", "Python", "Dart"}; var elemanSayisi = programlamaDilleri.length; print(elemanSayisi); } |
Çıktı: 4
Dart’ta Kümede Elemanın Olup Olmadığının Tespiti
Dart’ta contains () metodu bir kümedeki bir elemanı bulmak için kullanılabilir. Belirtilen elemanın var olup olmadığını belirtmek için bir boole değeri döndürür.
1 2 3 4 5 6 7 8 9 |
void main() { var programlamaDili = <String>{"C", "C++", "Python", "Dart"}; if(programlamaDili.contains("Flutter")){ print("Belirtilen eleman kümede var."); } else{ print("Belirtilen eleman kümede yok."); } } |
Çıktı: Belirtilen eleman kümede yok.
Dart’ta Tüm Küme Elemanlarını Silmek
clear() metodu, verilen kümeden tümünü kaldırmak veya silmek için kullanılır.
1 2 3 4 5 6 7 8 9 10 |
void main() { var programlamaDili = <String>{"C", "C++", "Python", "Dart"}; print("Silmeden Önce"); print(programlamaDili); print("Sildikten Sonra"); programlamaDili.clear(); print(programlamaDili); } |
Çıktı:
Silmeden Önce
{C, C++, Python, Dart}
Sildikten Sonra
{}
Dart’ta Küme Özellikleri
Özellik | Tanım |
---|---|
first | Kümedeki ilk öğeyi döndürür. |
isEmpty | Kümenin elemanı yoksa true değerini döndürür. |
isNotEmpty | Kümenin en az bir elemanı varsa true değerini döndürür. |
length | Kümenin uzunluğunu/boyutunu döndürür, belirli bir kümedeki eleman sayısı olarak da görülebilir. |
last | Kümedeki son elemanı döndürür. |
hashCode | Karşılık gelen nesne için bir karma kod döndürür. |
Single | Kümenin sadece bir elemanı olup olmadığını kontrol etmek ve onu döndürmek için kullanılır. |