Menu
Coddy logo textTech

Declaring and Initializing 2D

Teil des Abschnitts Logik & Ablauf der C#-Journey von Coddy — Lektion 2 von 66.

Ein 2D-Array in C# kann mit Jagged Arrays erstellt werden, die Arrays von Arrays sind und es ermöglichen, Daten in einer gitterartigen Struktur zu speichern.

Um ein gezacktes Array von Ganzzahlen mit 3 Zeilen und 4 Spalten zu erstellen:

int[][] grid = new int[3][];
grid[0] = new int[4];
grid[1] = new int[4];
grid[2] = new int[4];

Der obige Code erstellt ein 2D-Array, das so aussieht (alle Elemente auf 0 initialisiert):

[0, 0, 0, 0]
[0, 0, 0, 0]
[0, 0, 0, 0]

Initialisieren Sie ein gezacktes Array mit Werten:

int[][] matrix = new int[2][];
matrix[0] = new int[] {1, 2, 3};
matrix[1] = new int[] {4, 5, 6};

Dies erstellt ein 2D-Array mit 2 Zeilen und 3 Spalten, das die folgenden Werte enthält:

[1, 2, 3]
[4, 5, 6]

Um die Anzahl der Zeilen und Spalten zu erhalten:

int rows = matrix.Length;           // Returns 2
int columns = matrix[0].Length;     // Returns 3 (for the first row)

Der Zugriff auf Elemente in einem 2D-Array erfordert zwei Indizes: einen für die Zeile und einen für die Spalte.

Einen Wert an einer spezifischen Position (Zeile 1, Spalte 2) zuweisen:

grid[1][2] = 42;

Einen Wert von einer spezifischen Position lesen (Zeile 0, Spalte 3):

int value = grid[0][3];

Denken Sie daran, dass Array-Indizes bei 0 beginnen, daher sind die gültigen Bereiche:

  • Zeilen: 0 bis 2 (für ein Array mit 3 Zeilen)
  • Spalten: 0 bis 3 (für ein Array mit 4 Spalten)

Wenn Sie versuchen, auf ein Element außerhalb dieser Bereiche zuzugreifen (wie z. B. grid[3][2]), erhalten Sie eine IndexOutOfRangeException.

Spickzettel

Erstellen Sie ein gezacktes Array (2D-Array) in C#:

int[][] grid = new int[3][];
grid[0] = new int[4];
grid[1] = new int[4];
grid[2] = new int[4];

Mit Werten initialisieren:

int[][] matrix = new int[2][];
matrix[0] = new int[] {1, 2, 3};
matrix[1] = new int[] {4, 5, 6};

Dimensionen abrufen:

int rows = matrix.Length;           // Anzahl der Zeilen
int columns = matrix[0].Length;     // Anzahl der Spalten in der ersten Zeile

Zugriff auf Elemente mit zwei Indizes [Zeile][Spalte]:

grid[1][2] = 42;        // Wert zuweisen
int value = grid[0][3]; // Wert lesen

Array-Indizes beginnen bei 0. Der Zugriff auf Indizes außerhalb des gültigen Bereichs löst eine IndexOutOfRangeException aus.

Probier es selbst

Diese Lektion enthält keine Programmieraufgabe.

quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Logik & Ablauf