Menu
Coddy logo textTech

Bedingter Operator

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

Der bedingte Operator (?:) bietet eine knappe Möglichkeit, if-else-Anweisungen in einer Zeile zu schreiben:

condition ? expressionIfTrue : expressionIfFalse

Beispiel:

void main() {
  int age = 20;
  String status = age >= 18 ? 'Adult' : 'Minor';
  
  print(status);
}

Ausgabe: Adult

Es funktioniert mit verschiedenen Datentypen und ist ideal für einfache bedingte Zuweisungen.

challenge icon

Aufgabe

Einfach

Erstellen Sie ein Programm, das den bedingten Operator (?:) verwendet, um zu bestimmen, ob ein Spieler genug Punkte hat, um in einem Spiel das Level zu steigen:

  1. Deklarieren Sie eine Ganzzahlvariable playerScore mit einem Wert von 750
  2. Deklarieren Sie eine Ganzzahlvariable levelUpThreshold mit einem Wert von 500
  3. Verwenden Sie den bedingten Operator, um eine String-Nachricht zu erstellen, die entweder sagt:
    • "Level up!" wenn der Punktestand des Spielers größer oder gleich dem Schwellenwert ist
    • "Keep trying!" wenn der Punktestand des Spielers kleiner als der Schwellenwert ist
  4. Speichern Sie diese Nachricht in einer String-Variable namens message
  5. Geben Sie den Punktestand des Spielers mit dem Format aus: Player score: 750
  6. Geben Sie die Nachricht aus
  7. Aktualisieren Sie den Punktestand des Spielers auf 450
  8. Verwenden Sie den bedingten Operator erneut, um die Nachricht basierend auf dem neuen Punktestand zu aktualisieren
  9. Geben Sie den aktualisierten Punktestand des Spielers mit dem Format aus: Player score: 450
  10. Geben Sie die aktualisierte Nachricht aus

Ihre Ausgabe sollte dem erwarteten Format genau entsprechen.

Spickzettel

Der bedingte Operator (?:) bietet eine knappe Möglichkeit, if-else-Anweisungen in einer Zeile zu schreiben:

condition ? expressionIfTrue : expressionIfFalse

Beispiel:

int age = 20;
String status = age >= 18 ? 'Adult' : 'Minor';

Es funktioniert mit verschiedenen Datentypen und ist ideal für einfache bedingte Zuweisungen.

Probier es selbst

void main() {
  // Deklariere deine Variablen hier
  int playerScore = _;
  int levelUpThreshold = _;
  
  // Verwende den bedingten Operator, um die erste Nachricht zu erstellen
  String message = playerScore >= levelUpThreshold ? _ : _;
  
  // Drucke Spieler-Score und Nachricht aus
  print("Player score: $playerScore");
  print(message);
  
  // Aktualisiere den Spieler-Score
  playerScore = _;
  
  // Verwende den bedingten Operator, um die Nachricht zu aktualisieren
  message = playerScore >= levelUpThreshold ? _ : _;
  
  // Drucke aktualisierten Spieler-Score und Nachricht aus
  print("Player score: $playerScore");
  print(message);
}
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