2D Arrays Basics
Teil des Abschnitts Logik & Ablauf der C#-Journey von Coddy — Lektion 1 von 66.
In C# ist ein gezacktes Array ein Array von Arrays, das eine Gitter- oder matrixähnliche Struktur bildet. Es ist wie eine Tabelle mit Zeilen und Spalten, wobei jede Zelle einen Wert aufnehmen kann. Gezackte Arrays eignen sich gut zur Darstellung von Daten mit einer zweidimensionalen Beziehung, wie z. B. einem Schachbrett, einem Sitzplan oder einem rasterbasierten Spiel.
So deklarieren und initialisieren Sie ein gezacktes Array in C#:
data_type[][] arrayName = new dataType[numberOfRows][];dataType: Der Typ der Elemente, die das Array enthalten wird (z. B. int, string usw.).
arrayName: Der Name, den Sie dem Array geben.
numberOfRows: Die Anzahl der Zeilen im Array.
Jede Zeile muss dann separat initialisiert werden:
arrayName[0] = new dataType[lengthOfFirstRow];
arrayName[1] = new dataType[lengthOfSecondRow];
// and so on...Zum Beispiel, um ein gezacktes Array von Ganzzahlen mit 3 Zeilen zu erstellen, wobei jede Zeile 4 Spalten hat, schreibt man:
int[][] matrix = new int[3][];
matrix[0] = new int[4];
matrix[1] = new int[4];
matrix[2] = new int[4];Sie können ein gezacktes Array auch direkt mit Werten initialisieren:
int[][] matrix = new int[][] {
new int[] {1, 2, 3},
new int[] {4, 5, 6},
new int[] {7, 8, 9}
};Aufgabe
EinfachInitialisieren Sie ein gezacktes Array mit den folgenden Werten:
5, 7, 10, 24, 41
86, 13, 683, 64, 13
42, 46, 791, 111, 9
86, 88, 1845, 5, 15897
9, 1, 5, 5, 6Ihre Aufgabe besteht darin, das gezackte Array mit diesen exakten Werten korrekt zu initialisieren und sicherzustellen, dass das Programm die Matrix korrekt ausgibt.
Spickzettel
Ein gezacktes Array ist ein Array von Arrays, das eine matrixähnliche Struktur mit Zeilen und Spalten bildet.
Deklarationssyntax:
data_type[][] arrayName = new dataType[numberOfRows][];Jede Zeile muss separat initialisiert werden:
arrayName[0] = new dataType[lengthOfFirstRow];
arrayName[1] = new dataType[lengthOfSecondRow];Beispiel mit separater Initialisierung:
int[][] matrix = new int[3][];
matrix[0] = new int[4];
matrix[1] = new int[4];
matrix[2] = new int[4];Direkte Initialisierung mit Werten:
int[][] matrix = new int[][] {
new int[] {1, 2, 3},
new int[] {4, 5, 6},
new int[] {7, 8, 9}
};Probier es selbst
using System;
class Program
{
static void Main(string[] args)
{
int[][] matrix = {
// Schreibe deinen Code hier
};
// Matrix ausgeben
int rows = matrix.Length;
for (int i = 0; i < rows; i++)
{
int cols = matrix[i].Length;
for (int j = 0; j < cols; j++)
{
Console.Write(matrix[i][j] + " ");
}
Console.WriteLine();
}
}
}Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Logik & Ablauf
1Multi-dimensional Arrays
2D Arrays BasicsDeclaring and Initializing 2DAccessing 2D Array ElementsNested Loops with 2D ArraysJagged ArraysCommon Matrix OperationsRecap - Multi-dimensional4Flow Control Techniques
Early ReturnsGuard ClausesJump Statements (goto)Break and ContinueFlatten Nested Conditionals7Logical Operators Advanced
Short-Circuit EvaluationConditional Logical OperatorsOperator PrecedenceRecap - Advanced Operators2Advanced Decision Making
Multiple ConditionsComplex Boolean LogicIf vs. Switch ComparisonNested Switch StatementsRecap - Advanced Decisions5Exception Handling
Try-Catch BasicsException TypesMultiple Catch BlocksWorking with FilesFinally BlockUsing vs. Try-FinallyCustom ExceptionsRecap - Error Handling3Loop Enhancements
Loop PerformanceIterating ComplexEach Loop TypeRefactoring LoopsRecap - Optimized Loops6Null Handling
Null Reference BasicsNullable Value TypesNull Checking PatternsDefensive ProgrammingRecap - Null Safety