C#-Grundlagen

Arrays in C#

In dieser Lektion erstellst, liest, änderst, durchläufst und sortierst du Arrays in C#, auch zweidimensionale.

Einführung

Ein Array speichert eine feste Anzahl von Werten desselben Typs. Auf jedes Element greifst du über einen Index (index) zu, der bei 0 beginnt. Nach dem Erstellen kannst du die Werte einzelner Elemente ändern, die Länge des Arrays aber nicht.

Die Eigenschaft Length gibt die Elementanzahl an, und scores[^1] ist eine kurze Schreibweise für das letzte Element. Die foreach-Schleife durchläuft alle Elemente, um Summe und Durchschnitt zu berechnen. Array.Sort sortiert das Array direkt an Ort und Stelle. Ein mit new int[3] erzeugtes Array enthält bereits die Werte 0, und der Typ int[,] erzeugt ein zweidimensionales Array, auf das man über Zeile und Spalte zugreift.

So funktioniert es

Klicke auf ein Feld oder nutze den Schieberegler, um einen Index zu wählen. Füge ein oder lösche, um zu sehen, warum alle späteren Elemente verschoben werden müssen.

Ausführbares C#-Beispiel

C#
Code ausführen →
Program.cs
using System;
using System.Linq;

class Program
{
    static void Main()
    {
        // An array has a fixed length set when it is created.
        int[] scores = { 72, 95, 88, 64 };
        Console.WriteLine($"Length: {scores.Length}");
        Console.WriteLine($"First: {scores[0]}, last: {scores[^1]}");

        scores[3] = 70;  // elements can be changed, the length cannot

        int sum = 0;
        foreach (int score in scores)
        {
            sum += score;
        }
        Console.WriteLine($"Sum: {sum}, average: {sum / (double)scores.Length}");

        // Array.Sort sorts in place; string.Join prints the elements.
        Array.Sort(scores);
        Console.WriteLine($"Sorted: {string.Join(", ", scores)}");
        Console.WriteLine($"Max: {scores.Max()}");

        // new int[3] creates an array of zeros.
        int[] counts = new int[3];
        counts[1] = 5;
        Console.WriteLine($"Counts: {string.Join(" ", counts)}");

        // A 2D array is indexed by row and column.
        int[,] grid = { { 1, 2, 3 }, { 4, 5, 6 } };
        Console.WriteLine($"grid[1, 2] = {grid[1, 2]}");
    }
}
Ergebnis der Ausführung
Length: 4
First: 72, last: 64
Sum: 325, average: 81.25
Sorted: 70, 72, 88, 95
Max: 95
Counts: 0 5 0
grid[1, 2] = 6

Mit dem Debugger üben

Setze einen Haltepunkt auf eine wichtige Zuweisung oder Bedingung, klicke auf Debug und sieh dir die lokalen Werte an, bevor du zur nächsten Zeile gehst.

Mit einer Challenge üben

Nutze den Inhalt dieser Lektion, um ein echtes Problem zu lösen. Jede Challenge läuft im Browser, mit sofortigen Tests und einem KI-Review.

Alle Challenges