C# ist eine der beliebtesten Programmiersprachen und wird für die Entwicklung von Desktop-, Web- und mobilen Anwendungen verwendet. Ein wichtiger Aspekt von C# sind Listen, die es ermöglichen, eine Sammlung von Elementen in einer Variablen zu speichern und zu verwalten. In diesem Artikel werden wir uns genauer mit Listen in C# befassen und wie sie verwendet werden können, um effektiv und effizient zu programmieren.
Was sind Listen? Listen sind eine Möglichkeit, eine Sammlung von Elementen in C# zu speichern und zu verwalten. Im Gegensatz zu Arrays können Listen dynamisch wachsen oder schrumpfen, wenn Elemente hinzugefügt oder entfernt werden. In C# gibt es zwei Arten von Listen: die generische List<T> und die nicht generische ArrayList.
Deklaration und Initialisierung von Listen: Um eine List<T> in C# zu deklarieren, wird der Datentyp des Elements in spitzen Klammern (<>) angegeben, gefolgt von einem Variablennamen. Zum Beispiel sieht die Deklaration einer List<T> mit Zeichenfolgen wie folgt aus:
List namenListe;
Das List-Objekt muss jedoch noch initialisiert werden, bevor es verwendet werden kann. Zum Beispiel wird das Objekt wie folgt initialisiert:
namenListe = new List();
Zugriff auf Listenelemente: Der Zugriff auf Elemente in einer List<T> erfolgt ähnlich wie bei einem Array, indem der Index des Elements innerhalb der eckigen Klammern des Objekts angegeben wird. Der Index beginnt jedoch bei 0 für das erste Element im List-Objekt und geht bis zur Größe des Objekts minus 1 für das letzte Element. Zum Beispiel wird auf das dritte Element in einer List<string> wie folgt zugegriffen:
string drittesElement = namenListe[2];
Iterieren durch Listen: Eine Schleife kann verwendet werden, um durch alle Elemente in einer List<T> zu iterieren. Eine gängige Schleife für diesen Zweck ist die foreach-Schleife. Zum Beispiel sieht eine foreach-Schleife für eine List<string> namens namenListe wie folgt aus:
foreach (string name in namenListe)
{
Console.WriteLine(name);
}
Verwendung von Listen in Methoden: Listen können als Parameter an Methoden übergeben und von Methoden zurückgegeben werden. Zum Beispiel sieht eine Methode, die die Summe aller Elemente in einer List<int> berechnet, wie folgt aus:
public int Summe(List zahlenListe)
{
int summe = 0;
foreach (int zahl in zahlenListe)
{
summe += zahl;
}
return summe;
}
Hier sind weitere Beispiele für die Verwendung von Listen in C#:
List zahlen = new List { 1, 2, 3, 3, 4, 4, 5 };
zahlen = zahlen.Distinct().ToList();
In diesem Beispiel wird zuerst eine Liste mit einigen Zahlen erstellt, die Duplikate enthält. Dann wird die Distinct()
-Methode auf die Liste angewendet, um alle Duplikate zu entfernen. Schließlich wird die Liste mit der ToList()
-Methode in eine neue Liste mit eindeutigen Werten konvertiert.
List woerter = new List { "Banane", "Apfel", "Erdbeere", "Zitrone" };
woerter.Sort();
In diesem Beispiel wird zuerst eine Liste mit einigen Wörtern erstellt. Dann wird die Sort()
-Methode auf die Liste angewendet, um die Wörter alphabetisch zu sortieren.
List personen = new List
{
new Person { Name = "Anna", Alter = 20 },
new Person { Name = "Ben", Alter = 17 },
new Person { Name = "Chris", Alter = 25 },
new Person { Name = "David", Alter = 16 },
new Person { Name = "Emma", Alter = 21 }
};
List aelterePersonen = personen.Where(p => p.Alter > 18).ToList();
In diesem Beispiel wird zuerst eine Liste mit einigen Personen erstellt, die Namen und Alter enthalten. Dann wird die Where()
-Methode auf die Liste angewendet und eine Bedingung angegeben, um nur Personen auszuwählen, die älter als 18 Jahre sind. Schließlich wird die gefilterte Liste mit der ToList()
-Methode in eine neue Liste konvertiert.
Zusammenfassend lässt sich sagen, dass C# Listen eine wichtige Funktion für die effektive Speicherung und Verarbeitung von Daten in C# sind. Mit Listen können Elemente dynamisch hinzugefügt und entfernt werden, was im Vergleich zu Arrays eine wesentlich flexiblere Datenstruktur darstellt. Es ist wichtig zu beachten, dass Listen im Hintergrund auf Arrays basieren und daher ähnliche Funktionen und Methoden wie Arrays haben. Ein weiterer Vorteil von Listen ist ihre einfache Verwendung mit Linq-Abfragen, die die Verarbeitung und Analyse von Daten in C# erleichtern. Insgesamt sind Listen eine leistungsstarke und vielseitige Datenstruktur in C#, die in einer Vielzahl von Anwendungsfällen eingesetzt werden können. Es ist empfehlenswert, sich mit den verschiedenen Funktionen und Methoden von Listen vertraut zu machen, um ihre volle Funktionalität nutzen zu können.
Aufgabe zum Mitmachen:
Erstelle eine List<string>, die fünf deiner Lieblingsfilme enthält, und gib sie mithilfe einer foreach-Schleife aus.
using System;
class Program
{
static void Main(string[] args)
{
List lieblingsfilme = new List { "Inception", "The Dark Knight", "Fight Club", "Shutter Island", "Interstellar" };
foreach (string film in lieblingsfilme)
{
Console.WriteLine(film);
}
}
}