Menu
Coddy logo textTech

Operador Condicional

Parte da seção Fundamentos do Journey de Dart da Coddy — lição 30 de 94.

O operador condicional (?:) fornece uma maneira concisa de escrever instruções if-else em uma linha:

condition ? expressionIfTrue : expressionIfFalse

Exemplo:

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

Saída: Adult

Funciona com diferentes tipos de dados e é ideal para atribuições condicionais simples.

challenge icon

Desafio

Fácil

Crie um programa que usa o operador condicional (?:) para determinar se um jogador tem pontos suficientes para subir de nível em um jogo:

  1. Declare uma variável inteira playerScore com um valor de 750
  2. Declare uma variável inteira levelUpThreshold com um valor de 500
  3. Use o operador condicional para criar uma mensagem de string que diga ou:
    • "Level up!" se a pontuação do jogador for maior ou igual ao limite
    • "Keep trying!" se a pontuação do jogador for menor que o limite
  4. Armazene esta mensagem em uma variável de string chamada message
  5. Imprima a pontuação do jogador no formato: Player score: 750
  6. Imprima a mensagem
  7. Atualize a pontuação do jogador para 450
  8. Use o operador condicional novamente para atualizar a mensagem com base na nova pontuação
  9. Imprima a pontuação atualizada do jogador no formato: Player score: 450
  10. Imprima a mensagem atualizada

Sua saída deve corresponder exatamente ao formato esperado.

Folha de consulta

O operador condicional (?:) fornece uma maneira concisa de escrever instruções if-else em uma linha:

condition ? expressionIfTrue : expressionIfFalse

Exemplo:

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

Ele funciona com diferentes tipos de dados e é ideal para atribuições condicionais simples.

Experimente você mesmo

void main() {
  // Declare suas variáveis aqui
  int playerScore = _;
  int levelUpThreshold = _;
  
  // Use o operador condicional para criar a primeira mensagem
  String message = playerScore >= levelUpThreshold ? _ : _;
  
  // Imprima a pontuação do jogador e a mensagem
  print("Player score: $playerScore");
  print(message);
  
  // Atualize a pontuação do jogador
  playerScore = _;
  
  // Use o operador condicional para atualizar a mensagem
  message = playerScore >= levelUpThreshold ? _ : _;
  
  // Imprima a pontuação atualizada do jogador e a mensagem
  print("Player score: $playerScore");
  print(message);
}
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Fundamentos