Operador ternário em Java

Em muitas ocasiões, precisamos atribuir diferentes valores para uma variável dependendo de uma determinada condição. Você pode fazer isso de forma conveniente com o uso do operador ternário.
O operador ternário, portanto, provê uma forma sintética de redigir expressões condicionais.
Como uma alternativa menos verbosa às declarações if-else, é possível usar o operador ternário para obter o mesmo resultado de forma mais concisa.
O que é um operador Ternário?
É um operador que avalia uma condição e escolhe qual dos dois casos deve ser executado.
Pode ser considerado uma forma concisa de
if-else.Apesar das semelhanças, o operador ternário não é o mesmo que uma declaração condicional.
Esse operador poderá ser usado em locais onde uma expressão for esperada.
Em alguns casos o operador ternário pode ser mais legível que sua versão correspondente com
if-else.
Exemplo:
int a = ...;
int b = ...;
int max = ...;
if (a > b) {
max = a;
} else {
max = b;
}
Poderia ser expresso como:
int max = a > b ? a : b;
O operador ternário portanto é composto por:
result = condition ? trueCase : elseCase;
Onde:
condition= Condição que será avaliadatrueCase= Valor retornado se a condição for verdadeira.elseCase= Valor retornado se a condição for falsa.
Exemplo de código para retornar se um número é par ou ímpar:
int num = ...; // it's initialized by a value
System.out.println(num % 2 == 0 ? "even" : "odd");
Atenção: Parece maravilhoso não é? Entretanto, o uso do operador ternário deve ser feito com cautela, em casos onde uma decisão rápida e concisa faz sentido. Não seria uma boa prática usar o operador ternário apenas para reduzir a quantidade de código, arriscando prejudicar a legibilidade do nosso código.




