C# (C Sharp) Ders 8 – Koleksiyonlar (Collections) – List<T>

List<T>, Sıralı bir şekilde eleman saklayan dinamik boyutlu bir koleksiyondur. “T”, listenin içerisinde tutulacak veri türünü belirtir (int, string, vb.). Elemanlar eklenme sırasına göre korunur ve indeksleri 0’dan başlar.

Kullanım Alanları

  • Ürün listesi oluşturma
  • Kullanıcı adlarının veya e-posta adreslerinin saklanması
  • Veri sıralama, filtreleme ve dönüştürme işlemleri
  • Log kayıtlarını tutma

List<T> Oluşturma ve Eleman Ekleme/Çıkarma

C#
using System;
using System.Collections.Generic;

public class ListOrnegi
{
    public static void Main(string[] args)
    {
        // Boş bir string listesi oluşturma
        List<string> isimler = new List<string>();

        // Eleman ekleme
        isimler.Add("Ali");
        isimler.Add("Veli");
        isimler.Add("Mehmet");

        // Belirli bir indekse eleman ekleme
        isimler.Insert(1, "Ayşe"); // 1. indekse Ayşe'yi ekler (Ali, Ayşe, Veli, Mehmet)

        // Eleman çıkarma
        isimler.Remove("Veli"); // İlk bulunan "Veli" elemanını siler
        isimler.RemoveAt(0); // 0. indeksteki elemanı siler (Ayşe, Mehmet)

        foreach (string isim in isimler)
        {
            Console.WriteLine(isim);
        }
    }
}

Elemana Erişme (İndeksleme)

List<T>’deki elemanlara indeksleri kullanarak erişilebilir:

C#
string ilkIsim = isimler[0]; // İlk elemana erişir (Ayşe)
Console.WriteLine(ilkIsim);

List<T>’in Özellikleri

  • Count: Listedeki eleman sayısını döndürür.

Capacity: Listenin şu anda tutabileceği maksimum eleman sayısını döndürür. Kapasite, listede yer açmak için otomatik olarak artırılabilir.

C#
Console.WriteLine($"Eleman sayısı: {isimler.Count}"); // Eleman sayısı: 2
Console.WriteLine($"Kapasite: {isimler.Capacity}"); // Kapasite (örneğin, 4 olabilir)

List<T> ile Döngüler

  • for döngüsü: İndeksleri kullanarak elemanlara erişmek için kullanılır.
  • foreach döngüsü: Listedeki tüm elemanları sırayla işlemek için daha kolay bir yöntemdir.

List<T>’in Yaygın Kullanım Senaryoları

  • Veri sıralama: Sort() metodu ile listeyi sıralayabiliriz.
  • Veri filtreleme: LINQ kullanarak belirli koşulları sağlayan elemanları seçebiliriz.
  • Veri dönüştürme: LINQ kullanarak listedeki elemanları farklı bir türe dönüştürebiliriz.

Kaynak: https://learn.microsoft.com/tr-tr/dotnet/csharp/tour-of-csharp/tutorials/