Bu yazıda C# programlama dilinde List (liste) kullanımını göreceğiz. Liste oluşturma, Listeye eleman ekleme, liste elemanlarına erişme, bir dizi içindeki verileri Liste içine aktarma ve Liste elemanlarını yazdırma gibi bazı işlemleri gerçekleştireceğiz.
C# Liste Oluşturma
List<T> genel bir koleksiyondur, bu nedenle depolayabileceği veri türü için bir tür parametresi belirtmeniz gerekir. Aşağıdaki örnek, listenin nasıl oluşturulacağını ve öğelerin nasıl ekleneceğini gösterir.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | List<int> asalSayilar = new List<int>(); asalSayilar.Add(1); asalSayilar.Add(3); asalSayilar.Add(5); asalSayilar.Add(7); var sehiler = new List<string>(); sehiler.Add("İstanbul"); sehiler.Add("Ankara"); sehiler.Add("İzmir"); sehiler.Add("Bursa"); sehiler.Add(null);//İstenirse boş değer eklenebilir. var buyukSehiler = new List<string>() { "İstanbul", "Ankara", "İzmir", "Bursa" }; |
Yukarıdaki örnekte, List int asalSayilar= new List int (); Int türünde bir liste oluşturur. Aynı şekilde, şehirler ve büyükşehirler string tipi listelerdir. Ardından Add() yöntemini veya koleksiyon başlatıcı sözdizimini kullanarak bir listeye öğeler ekleyebilirsiniz.
Koleksiyon başlatıcı sözdizimini kullanarak özel sınıfların öğelerini de ekleyebilirsiniz. Aşağıdaki, Student sınıfının nesnelerini List<Student> ‘a ekler.
1 2 3 4 5 6 7 8 | var students = new List<Student>() { new Student(){ Id = 1, Name="Ali"}, new Student(){ Id = 2, Name="Ayşe"}, new Student(){ Id = 3, Name="Fatma"}, new Student(){ Id = 4, Name="Salih"} }; |
Diziyi Listeye Ekleme
Bir dizideki veya başka bir koleksiyondaki tüm öğeleri Listeye eklemek için AddRange() yöntemini kullanın.
void AddRange(IEnumerable<T> collection)
1 2 3 4 5 6 7 8 9 10 11 12 13 | string[] sehirler = new string[3] { "Denizli", "Aydın", "Manisa" }; var egeSehirler = new List<string>(); // Diziyi Listeye Ekleme egeSehirler.AddRange(sehirler); var favouriteCities = new List<string>(); // Listeye Ekleme favouriteCities.AddRange(egeSehirler); |
Liste Elemanlarına Erişim
Bir listeye bir dizin, bir for/foreach döngüsü ve LINQ sorguları kullanılarak erişilebilir. Bir listenin dizinleri sıfırdan başlar. Diziyle aynı şekilde tek tek liste öğelerine erişmek için köşeli parantez içinde bir dizin iletin. Bir List<T> koleksiyonunu yinelemek için bir foreach veya for döngüsü kullanın.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | List<int> numbers = new List<int>() { 1, 2, 5, 7, 8, 10 }; Console.WriteLine(numbers[0]); // prints 1 Console.WriteLine(numbers[1]); // prints 2 Console.WriteLine(numbers[2]); // prints 5 Console.WriteLine(numbers[3]); // prints 7 // LINQ kullanarak numbers.ForEach(num => Console.WriteLine(num + ", "));//prints 1, 2, 5, 7, 8, 10, // For Döngüsü ile for(int i = 0; i < numbers.Count; i++) Console.WriteLine(numbers[i]); |
Listeye Eleman Ekleme (İstenen İndex No)
Insert() metodunu kullanarak listeye eleman ekleyebilirsiniz. Bu metotla liste içinde herhangi bir indexe ekleme yani aralara da ekleme yapabilirsiniz.
1 2 3 4 5 6 7 8 | var numbers = new List<int>(){ 10, 20, 30, 40 }; numbers.Insert(1, 11);// 1 nolu indexe 11 sayısı eklenir.10 sayısından sonra foreach (var num in numbers) Console.Write(num); |
Listeden Eleman Silme
Bir listeden eleman silmek için Remove() ve RemoveAt() metotlarını kullanabilirsiniz.
Örnek:
1 2 3 4 5 6 7 | var numbers = new List<int>(){ 10, 20, 30, 40, 10 }; numbers.Remove(10); // 10 sayısını siler. numbers.RemoveAt(2); //3. elemanı siler (index numarası 0 dan başlar.) |
Add Comment