Menu
Coddy logo textTech

Accessing 2D Array Elements

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

Der Zugriff auf Elemente in einem 2D-Array verwendet eine ähnliche Syntax wie bei normalen Arrays, erfordert aber zwei Indizes: einen für die Zeile und einen für die Spalte.

Hinweis: In C# gibt es zwei Arten von mehrdimensionalen Arrays: rechteckige Arrays (int[,]) und jagged Arrays (int[][]). Diese Lektion behandelt jagged Arrays, bei denen jede Zeile ein eigenes Array ist.

Erstellen Sie ein gezacktes Array mit 3 Zeilen und 4 Spalten:

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

Einen Wert einer spezifischen Position zuweisen (Zeilenindex 1, Spaltenindex 2):

grid[1][2] = 42;

Lesen Sie einen Wert von einer spezifischen Position (Zeilenindex 0, Spaltenindex 3):

int value = grid[0][3];

Da Indizes bei 0 beginnen, ist Zeilenindex 0 die 1. Zeile und Spaltenindex 3 die 4. Spalte.

Denken Sie daran, dass Array-Indizes bei 0 beginnen, sodass die gültigen Indexbereiche lauten:

  • Zeilen: Index 0 bis 2 (für ein Array mit 3 Zeilen — die 1. Zeile ist Index 0, die 2. Zeile ist Index 1, die 3. Zeile ist Index 2)
  • Spalten: Index 0 bis 3 (für ein Array mit 4 Spalten — die 1. Spalte ist Index 0, die 2. Spalte ist Index 1 usw.)
Wenn Sie versuchen, auf ein Element außerhalb dieser Bereiche zuzugreifen (z. B. grid[3][2]), erhalten Sie eine IndexOutOfRangeException.
challenge icon

Aufgabe

Mittel

Schreiben Sie eine Methode namens getElement, die drei Argumente entgegennimmt:

  1. Ein 2D-Integer-Array (int[][] matrix)
  2. Ein Zeilenindex (int row)
  3. Ein Spaltenindex (int col)

Die Methode sollte das Element an der angegebenen Position zurückgeben, wenn die Indizes gültig sind. Wenn ein Index außerhalb des Bereichs liegt, sollte die Methode -1 zurückgeben.

Spickzettel

Greifen Sie auf Elemente in einem 2D-Array mit zwei Indizes zu: [row][column]

Erstellen Sie ein 2D-Array:

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

Einem Wert zuweisen:

grid[1][2] = 42;

Einen Wert lesen:

int value = grid[0][3];

Array-Indizes beginnen bei 0. Der Zugriff auf Elemente außerhalb gültiger Bereiche löst eine IndexOutOfRangeException aus.

Probier es selbst

public class GetElement
{
    public static int getElement(int[][] array, int row, int col)
    {
        // Schreibe deinen Code hier
    }
}
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