Einführung in Mehrdimensionale Arrays in C#
In der Programmierung ist es häufig notwendig, Daten strukturiert zu speichern. Während eindimensionale Arrays in C# nützlich sind, benötigen Sie für komplexere Datenstrukturen, wie Tabellen, mehrdimensionale Arrays. In diesem Artikel erfahren Sie, was mehrdimensionale Arrays sind, wie Sie sie in C# deklarieren und verwenden können, insbesondere 2D-Arrays.
Was sind mehrdimensionale Arrays?
Ein mehrdimensionales Array ist im Wesentlichen ein Array von Arrays. Diese Arrays können beliebig viele Dimensionen haben, wobei die gängigsten zwei- und dreidimensionale Arrays sind. In C# können Sie mithilfe von Kommas in den eckigen Klammern die Dimensionen eines Arrays festlegen.
2D Arrays in C#
Ein zweidimensionales Array (2D-Array) kann als Tabelle mit Zeilen und Spalten visualisiert werden. Um ein 2D-Array zu erstellen, fügen Sie in C# jede Array-Dimension in geschweifte Klammern ein und trennen die inneren Arrays durch Kommas:
int[,] zahlen = { {1, 4, 2}, {3, 6, 8} };
Hier zeigt das Komma zwischen den eckigen Klammern, dass es sich um ein zweidimensionales Array handelt. Um ein dreidimensionales Array zu deklarieren, fügen Sie zwei Kommas ein, wie in int[,,]
.
Elemente eines 2D Arrays zugreifen
Um auf ein Element eines zweidimensionalen Arrays zuzugreifen, müssen Sie zwei Indizes angeben: einen für die Zeile und einen für die Spalte. Zum Beispiel:
Console.WriteLine(zahlen[0, 2]); // Gibt 2 aus
Hierbei ist zu beachten, dass die Indizes bei 0 beginnen, sodass zahlen[0, 0]
das erste Element in der ersten Zeile darstellt.
Ändern von Elementen in einem 2D Array
Sie können auch die Werte der Elemente in einem 2D Array ändern. Hier ist ein Beispiel, wie Sie den Wert eines Elements ändern:
zahlen[0, 0] = 5; // Ändert den Wert auf 5
Nach dieser Änderung würde der Ausdruck Console.WriteLine(zahlen[0, 0]);
den Wert 5 ausgeben.
Durchlaufen eines 2D Arrays
Um alle Elemente eines zweidimensionalen Arrays zu durchlaufen, können Sie eine foreach
-Schleife verwenden:
foreach (int i in zahlen) { Console.WriteLine(i); }
Alternativ können Sie auch eine verschachtelte for
-Schleife verwenden, um mehr Kontrolle über die Iteration zu haben:
for (int i = 0; i < zahlen.GetLength(0); i++) {
for (int j = 0; j < zahlen.GetLength(1); j++) {
Console.WriteLine(zahlen[i, j]);
}
}
Verschiedene Typen von Arrays in C#
In C# gibt es verschiedene Arten von Arrays, die sich in ihrer Struktur unterscheiden:
- Eindimensionale Arrays: Einfache Listen von Daten.
- Mehrdimensionale Arrays: Arrays mit zwei oder mehr Dimensionen, wie 2D- und 3D-Arrays.
- Jagged Arrays: Arrays von Arrays, wobei jede innere Array eine unterschiedliche Größe haben kann.
Jagged Arrays in C#
Jagged Arrays sind eine besondere Form von Arrays, bei denen die inneren Arrays unterschiedlich groß sein können. Sie werden erstellt, indem Sie ein Array von Arrays deklarieren:
int[][] jaggedArray = new int[3][];
Hierbei müssen die inneren Arrays manuell erstellt werden:
jaggedArray[0] = new int[] { 1, 2, 3 };
Beispiele für die Verwendung von Jagged Arrays
Jagged Arrays können nützlich sein, wenn Sie unterschiedliche Datenstrukturen benötigen. Hier ist ein Beispiel:
int[][] jaggedArray = {
new int[] { 1, 2, 3 },
new int[] { 4, 5 },
new int[] { 6, 7, 8, 9 }
};
Um auf die Elemente eines Jagged Arrays zuzugreifen, verwenden Sie zwei Indizes:
Console.WriteLine(jaggedArray[1][0]); // Gibt 4 aus
Zusammenfassung und Ausblick
Das Verständnis und die Verwendung von mehrdimensionalen Arrays sind entscheidend für die Programmierung in C#. Sie ermöglichen es Ihnen, Daten in strukturierter Form zu speichern und effizient zu verarbeiten. Ob es sich um 2D-Arrays handelt, die in Tabellenform organisiert sind, oder um Jagged Arrays, die flexiblere Datenstrukturen bieten, die Möglichkeiten sind vielfältig.
Für weitere Informationen zu grundlegenden Konzepten der objektorientierten Programmierung in C# können Sie diesen Artikel lesen: Was ist ein Objekt in der Programmierung?