Menu
Coddy logo textTech

Operador condicional

Parte de la sección Fundamentos del Journey de Dart de Coddy — lección 30 de 94.

El operador condicional (?:) proporciona una forma concisa de escribir declaraciones if-else en una sola línea:

condition ? expressionIfTrue : expressionIfFalse

Ejemplo:

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

Salida: Adult

Funciona con diferentes tipos de datos y es ideal para asignaciones condicionales simples.

challenge icon

Desafío

Fácil

Crea un programa que use el operador condicional (?:) para determinar si un jugador tiene suficientes puntos para subir de nivel en un juego:

  1. Declara una variable entera playerScore con un valor de 750
  2. Declara una variable entera levelUpThreshold con un valor de 500
  3. Usa el operador condicional para crear un mensaje de cadena que diga:
    • "Level up!" si la puntuación del jugador es mayor o igual al umbral
    • "Keep trying!" si la puntuación del jugador es menor que el umbral
  4. Almacena este mensaje en una variable de cadena llamada message
  5. Imprime la puntuación del jugador con el formato: Player score: 750
  6. Imprime el mensaje
  7. Actualiza la puntuación del jugador a 450
  8. Usa el operador condicional nuevamente para actualizar el mensaje basado en la nueva puntuación
  9. Imprime la puntuación actualizada del jugador con el formato: Player score: 450
  10. Imprime el mensaje actualizado

Tu salida debe coincidir exactamente con el formato esperado.

Hoja de referencia

El operador condicional (?:) proporciona una manera concisa de escribir declaraciones if-else en una sola línea:

condition ? expressionIfTrue : expressionIfFalse

Ejemplo:

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

Funciona con diferentes tipos de datos y es ideal para asignaciones condicionales simples.

Pruébalo tú mismo

void main() {
  // Declara tus variables aquí
  int playerScore = _;
  int levelUpThreshold = _;
  
  // Usa el operador condicional para crear el primer mensaje
  String message = playerScore >= levelUpThreshold ? _ : _;
  
  // Imprime la puntuación del jugador y el mensaje
  print("Player score: $playerScore");
  print(message);
  
  // Actualiza la puntuación del jugador
  playerScore = _;
  
  // Usa el operador condicional para actualizar el mensaje
  message = playerScore >= levelUpThreshold ? _ : _;
  
  // Imprime la puntuación actualizada del jugador y el mensaje
  print("Player score: $playerScore");
  print(message);
}
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Fundamentos