Neste artigo, você aprenderá a usar o operador condicional ou ternário para alterar o fluxo de controle do programa.
O operador condicional ternário "? :"
é uma abreviação para a instrução if-else.
A sintaxe do operador condicional ternário é:
doença ? valor1: valor2
Como funciona o operador condicional ternário?
Veja como isso funciona
- Se a condição for verdadeira, ele retornará valor1.
- Se a condição for falsa, ele retornará valor2.
O código equivalente acima usando if - else é:
se condição (valor1) senão (valor2)
Por que usar o operador condicional ternário?
Você pode estar se perguntando por que devemos usar o operador condicional se ele faz o mesmo trabalho que a instrução if-else. O principal objetivo de usá-lo é tornar o código mais curto e mais legível.
Para condições simples, você pode avaliá-lo em uma única linha com menos código do que if-else.
Exemplo 1: exemplo simples usando operador condicional ternário
print(true && false ? "The condition is true": "The condition is false")
O código equivalente acima usando if - else é:
if true && false ( print("The condition is true") ) else ( print("The condition is false") )
Quando você executa o programa acima, a saída será:
A condição é falsa
No programa acima, a expressão é true && false
avaliada como false
, portanto, a instrução retorna a string. A condição é falsa e a instrução de impressão gera a string no console.
Se você alterar a expressão quando true || false
a instrução for avaliada true
e retornar a string A condição é verdadeira e a instrução de impressão produz a string no console.
Coisas para lembrar
O operador condicional ternário também pode ser usado como uma alternativa de if-else-if
instrução.
Com o uso do operador condicional ternário, você pode substituir várias linhas de if-else-if
código por uma única linha.
No entanto, pode não ser uma boa ideia.
Exemplo 2: aninhado if else usando operador condicional ternário
if true && false ( print("Result is (true && false)") ) else if true || false ( print("Result is (true || false)") ) else if false || false ( print("Result is (false || false)") ) else ( print("Default else statement") )
O código equivalente acima usando o operador condicional ternário é:
print(true && false ? "Result is (true && false)" : true || false ? "Result is (true || false)" : false || false ? "Result is (false || false)" : "The condition is unknown")
Quando você executa os programas acima, ambos os resultados serão:
Resultado é verdade
Nos programas acima, embora as instruções de if-else-if
sejam substituídas por uma única linha pelo uso do operador condicional. A expressão usada no operador condicional ternário é realmente difícil de entender.
Portanto, apenas use o operador condicional ternário como uma alternativa de if-else
instrução apenas.