Records und Vergleich nach Wert in C#
In dieser Lektion stellst du mit Records unveränderliche Daten kompakt dar und erzeugst mit dem Ausdruck with veränderte Kopien.
Einführung
Ein Record ist ein Typ für Objekte, die hauptsächlich Daten enthalten. Mit einer einzigen Deklarationszeile bekommt er einen Konstruktor, schreibgeschützte Eigenschaften und eine übersichtliche Ausgabe. Vor allem gelten zwei Records als gleich, wenn die enthaltenen Werte gleich sind.
Die Zeile record User(string Name, string Role) erzeugt einen Typ mit den beiden Eigenschaften Name und Role. Der Ausdruck original with { Role = "Lead" } erzeugt eine Kopie, in der nur Role geändert ist, original behält den Wert Developer. Bei der Ausgabe zeigt der Record seinen Inhalt automatisch im Format User { Name = Ada, Role = Lead }.
Ausführbares C#-Beispiel
using System;
record User(string Name, string Role);
class Program
{
static void Main()
{
var original = new User("Ada", "Developer");
var promoted = original with { Role = "Lead" };
Console.WriteLine(promoted);
}
}
User { Name = Ada, Role = Lead }Mit dem Debugger üben
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