Was bedeuten zwei Fragezeichen in C#? (Operator ??)
Hallo Kollegen! Ich habe vor kurzem angefangen, C# zu lernen, und bin in fremdem Code auf eine seltsame Konstruktion gestoßen. Da stand so etwas wie:\n\n```csharp\nstring name = userName ?? "Gast";\n```\n\nIch verstehe, dass `userName` eine Variable ist und `"Gast"` ein String. Aber was macht dieses doppelte Fragezeichen (`??`)? Ist das ein Vergleichsoperator? Oder eine Abkürzung für `if-else`? Ich habe versucht, im Internet zu suchen, aber nur allgemeine Erklärungen auf Englisch gefunden, die ich nicht ganz verstanden habe.\n\nKönnt ihr es mir in einfachen Worten erklären, am besten mit Beispielen? Wann sollte man das überhaupt verwenden? Und gibt es einen Unterschied zwischen `??` und dem ternären Operator `?:`? Vielen Dank im Voraus! Ich schreibe eine einfache Konsolenanwendung, bei der ich den Benutzernamen abrufen muss und wenn er nicht angegeben ist (null), soll "Gast" ausgegeben werden. Hier ist mein aktueller
Noch keine Antworten.
Anmelden um eine Antwort zu hinterlassen
Blogs
Kotlin im Jahr 2025: Was ist neu und warum es wichtig ist
Aufgabenwarteschlangen in Rust: Vollständiger Leitfaden für Anfänger
MediaSessionCompat FLAG_IMMUTABLE/FLAG_MUTABLE: Komplette Kotlin-Lösung
GOPATH und GOROOT in Go: Richtige Werte und häufige Fehler