Listen 📋
Was ist eine Liste?
Eine Liste (List
Beispiel:
List<int> zahlen = new List<int>();
Eigenschaften einer Liste
| Eigenschaft | Beschreibung |
|---|---|
| Dynamische Grösse | Die Liste kann wachsen oder schrumpfen. |
| Einheitlicher Datentyp | Alle Elemente haben denselben Typ (T). |
| Indexbasiert | Zugriff über Indizes, beginnend bei 0. |
| Enthält viele Methoden | Zum Hinzufügen, Entfernen und Suchen von Elementen. |
| Teil des Namespaces | using System.Collections.Generic; ist erforderlich. |
Deklaration & Initialisierung
using System.Collections.Generic;
List<string> namen = new List<string>();
namen.Add("Anna");
namen.Add("Ben");
namen.Add("Chris");
Oder direkt mit Werten:
List<int> noten = new List<int> { 1, 2, 3, 4, 5 };
Zugriff & Bearbeitung
List<string> namen = new List<string> { "Anna", "Ben", "Chris" };
Console.WriteLine(namen[1]); // Ausgabe: Ben
namen[1] = "Benedikt"; // Element ändern
namen.Add("Diana"); // Element hinzufügen
namen.Remove("Anna"); // Element entfernen
Wichtige Eigenschaften und Methoden
| Methode / Eigenschaft | Beschreibung | Beispiel |
|---|---|---|
Add(element) |
Fügt ein Element hinzu | namen.Add("Lisa") |
Remove(element) |
Entfernt das erste Vorkommen | namen.Remove("Lisa") |
Count |
Anzahl der Elemente | namen.Count |
Contains(element) |
Prüft, ob Element enthalten ist | namen.Contains("Anna") |
Insert(index, element) |
Fügt an bestimmter Position ein | namen.Insert(1, "Tom") |
Clear() |
Entfernt alle Elemente | namen.Clear() |
Sort() |
Sortiert die Liste | namen.Sort() |
Reverse() |
Dreht die Reihenfolge um | namen.Reverse() |
Durchlaufen einer Liste
Mit for-Schleife:
for (int i = 0; i < namen.Count; i++)
{
Console.WriteLine(namen[i]);
}
Mit foreach-Schleife:
foreach (string name in namen)
{
Console.WriteLine(name);
}
Vergleich Array vs. Liste
| Kriterium | Array | Liste (List<T>) |
|---|---|---|
| Grösse | Fix | Dynamisch |
| Datentyp | Einheitlich | Einheitlich |
| Leistung (Performance) | Etwas schneller, da fest | Etwas langsamer wegen Flexibilität |
| Methodenvielfalt | Wenige (Sort, Reverse, …) | Viele (Add, Remove, Find, …) |
| Verwendung | Wenn Anzahl bekannt ist | Wenn Anzahl variabel ist |
| Namespace | System |
System.Collections.Generic |