Menu
Coddy logo textTech

Null-bewusster Operator

Teil des Abschnitts Grundlagen der Dart-Journey von Coddy — Lektion 28 von 94.

Der null-bewusste Operator (??) gibt den linken Ausdruck zurück, wenn er nicht null ist, andernfalls den rechten Ausdruck.

void main() {
  String? name = 'Dart';
  String displayName = name ?? 'Guest';
  
  print('Hello, $displayName!');
}
void main() {
  String? name = null;
  String displayName = name ?? 'Guest';
  
  print('Hello, $displayName!');
}
void main() {
  int? score;  // Kein Anfangswert, Standardwert ist null
  int displayScore = score ?? 0;
  
  print('Your score: $displayScore');
  
  // Später im Programm erhält score einen Wert
  score = 100;
  displayScore = score ?? 0;
  
  print('Your updated score: $displayScore');
}
challenge icon

Aufgabe

Einfach

Erstellen Sie ein Programm, das den null-aware Operator (??) in Dart demonstriert:

  1. Deklarieren Sie eine nullable String-Variable namens username und setzen Sie sie auf null
  2. Deklarieren Sie eine nullable int-Variable namens userAge und setzen Sie sie auf null
  3. Verwenden Sie den null-aware Operator, um einen Standardwert von "Guest" einer neuen Variable displayName zuzuweisen, falls username null ist
  4. Verwenden Sie den null-aware Operator, um einen Standardwert von 18 einer neuen Variable displayAge zuzuweisen, falls userAge null ist
  5. Geben Sie die Werte mit dem EXAKTEN folgenden Format aus:
Username: Guest (default value used)
Age: 18 (default value used)

Dann:

  1. Aktualisieren Sie username auf "DartUser"
  2. Aktualisieren Sie userAge auf 25
  3. Wiederholen Sie Schritte 3 und 4 mit den aktualisierten Werten
  4. Geben Sie die Werte mit dem EXAKTEN folgenden Format aus:
Username: DartUser (original value used)
Age: 25 (original value used)

Spickzettel

Der null-bewusste Operator (??) gibt den linken Ausdruck zurück, wenn er nicht null ist, andernfalls den rechten Ausdruck.

String? name = null;
String displayName = name ?? 'Guest';  // Gibt 'Guest' zurück, da name null ist

int? score = 100;
int displayScore = score ?? 0;  // Gibt 100 zurück, da score nicht null ist

Probier es selbst

void main() {
  // Deklariere nullable Variablen
  String? username = _;
  int? userAge = _;
  
  // Verwende null-aware Operator für Standardwerte
  String displayName = username ?? _;
  int displayAge = userAge ?? _;
  
  // Gib initiale Werte aus
  print("Username: $displayName (default value used)");
  print("Age: $displayAge (default value used)");
  
  // Aktualisiere Variablen
  username = _;
  userAge = _;
  
  // Verwende null-aware Operator erneut
  displayName = username _ "Guest";
  displayAge = userAge _ 18;
  
  // Gib aktualisierte Werte aus
  print("Username: $displayName (original value used)");
  print("Age: $displayAge (original value used)");
}
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 Grundlagen