Kullanımı diziler ile neredeyse aynıdır. En temel fark dizilerin kaç elemanlı olacağını belirtmek zorunluyken listelerde böyle bir zorunluluk yoktur. Listelerde ihtiyaç duyulduğu sürece eleman eklenebilir, ayrıca diziler tek tip elemanları saklarlar listelerde ise tanılama bilgisi object olursa farklı veri türlerinden elemanlar listeye eklenebilir. Bir liste aşağıdaki gibi tanımlanır.
<Veri Tipi >Liste adı= new List<Veri tipi>();
Listeye eklenen veriler add komutu kullanılarak eklenir. Eklenecek olan veriler köşeli parantez içerisine yazılır. Listenin içerisine eleman ekleme işlemi dizilerde olduğu gibi index numarasına göre yapılır.
Örnek:
List<int> Liste = new List<int>();
Liste.Add(5);
Liste.Add(10);
Farklı veri türlerini aynı liste içerisine ekleyerek saklamak için object komutu kullanılır.
List<object> Liste = new List<object>();
Liste.Add(5);
Liste.Add(10);
Liste.Add("C#");
Liste.Add(true);
Liste.Add('A');
foreach (object list in Liste)
Console.WriteLine(list);
Console.ReadKey();
Listelerde silme işlemi Remove ve RemoveAt metotları ile yapılır. Remove metodunda silinmesi istenen değer aynen yazılır. Silme işlemi gerçekleşirse geriye true döndürülür.Silme işlemi gerçekleşmezse geriye false döndürülür. RemoveAt metodunda ise index numarası kullanılarak silme işlemi yapılır bu metot da geriye değer döndürülmez.
Liste.Add(5);
Liste.Add(10);
Liste.Add("C#");
Liste.Add(true);
Liste.Add(true);
Liste.Add('A');
Liste.RemoveAt(3);
foreach (object list in Liste)
Console.WriteLine(list);
Console.ReadKey();
Remove komutu 2 tane aynı değer varsa ilk değeri siler ve ekrana yazdırır.
Liste.Add(5);
Liste.Add(10);
Liste.Add("C#");
Liste.Add(true);
Liste.Add(true);
Liste.Add('A');
Liste.Remove(true);
foreach (object list in Liste)
Console.WriteLine(list);
Console.ReadKey();
Belirli bir index değerinden başlayarak istenilen sayıda eleman silmek için RemoveRange motodu kullanılır. Bu metodun 2 tane parametresi vardır. İlk parametre silinmeye başlanacak olan index numarasını, ikinci parametre ise silinecek eleman sayısını gösterir.
List<object> Liste = new List<object>();
Liste.Add(5);
Liste.Add(10);
Liste.Add("C#");
Liste.Add(true);
Liste.Add(true);
Liste.Add('A');
Liste.RemoveRange(0,2);
foreach (object list in Liste)
Console.WriteLine(list);
Console.ReadKey();
Listedeki elemanları tersine çevirmek için Reverse metodu kullanılır.
List<object> Liste = new List<object>();
Liste.Add(5);
Liste.Add(10);
Liste.Add("C#");
Liste.Add(true);
Liste.Add(true);
Liste.Add('A');
Liste.Reverse();
foreach (object list in Liste)
Console.WriteLine(list);
Console.ReadKey();