Merhabalar.

Bu yazımda Set kavramına bakacağız.

Setlerde listedir. Ancak bildiğimiz listelerden biraz farklılıkları vardır.

Setler listeler gibi index ile sıralı atama yapmaz o yüzden index değerleri ile ulaşamayız.

Setler içerisinde aynı değeri birden fazla tutamazlar.

Tanımlama

Set<VeriTipi> Set_İsmi = Set();

void main(){

  Set<int> set1 = Set();

  Set<String> set2 = Set();
}

Set dizilere add metodu ile değer ataması yapılır.

void main(){

  Set<int> set1 = Set();

  Set<String> set2 = Set();
  
  set1.add(1);
  set1.add(2);
  
  print(set1);
  
}
H:\Dart_Tutorial\hello_dart\bin>dart 22_sets.dart
{1, 2}

Set dizilere ilk değer ataması aşağıdaki gibi yapılabilir.

 Set<int> set3 = {1,2,3,4};
  print(set3);
H:\Dart_Tutorial\hello_dart\bin>dart 22_sets.dart
{1, 2}
{1, 2, 3, 4}

Set diziye normal bir listten değer ataması yapabiliriz.

 var list1 = [1,2,4,5];
  Set<int> set4 = Set.from(list1);
  
  print(set4);
H:\Dart_Tutorial\hello_dart\bin>dart 22_sets.dart
{1, 2}
{1, 2, 3, 4}
{1, 2, 4, 5}

Set değerlerini ekrana iki şekilde bastırabiliriz.

 for(var i in set4){
    print(i);
  }
  
  set4.forEach((element) { 
    
    print(element);
    
  });
H:\Dart_Tutorial\hello_dart\bin>dart 22_sets.dart
{1, 2}
{1, 2, 3, 4}
{1, 2, 4, 5}
1
2
4
5
1
2
4
5

Set içinde var olan bir değeri silebiliriz.

Bunun için remove metodu kullanılır.

Remove değer varsa siler geriye true ya da false değer döndürür.

Değeri set’den siler ve geriye bool değer döner.

 bool a = set4.remove(1);
  print(a);
  print(set4);
H:\Dart_Tutorial\hello_dart\bin>dart 22_sets.dart
{1, 2}
{1, 2, 3, 4}
{1, 2, 4, 5}
1
2
4
5
1
2
4
5
true
{2, 4, 5}

List üzerinde kullanılan pek çok metod set üzerinde kullanılır.

Burada tekrar etmeyeceğiz.

Bir sonraki yazımızda görüşmek üzere.


What's Your Reaction?

hate hate
0
hate
fail fail
0
fail
fun fun
0
fun
geeky geeky
0
geeky
love love
0
love
lol lol
0
lol
omg omg
0
omg
win win
0
win
Murat Bilginer
21 Şubat 1992 Doğumlu. Endüstri Mühendisi olarak Lisansını 2016 yılında tamamlamıştır. Industryolog Akademi - NGenius oluşumlarının kurucusudur. Şu anda kendi şirketi Brainy Tech ile hem Yazılım Hizmetleri Sunmakta Hem de Online Eğitimler Vermektedir.