Trilhas
/
Java
Java
/
Programa
/
Operadores ternários
Op

Operadores ternários em Java

1 exercício

Sobre Operadores ternários

Os operadores ternários podem ser vistos como uma versão compacta do if-else. Costumam ser usados em instruções de retorno (mas não só nelas): precisam de uma única linha para tomar a decisão, retornando o valor da esquerda se a expressão for true e o valor da direita se for false.

Muitas expressões simples de if/else podem ser simplificadas com operadores ternários.

// this ternary statement
return 5 > 4 ? true : false;

// is equivalent to this if/else
if ( 5 > 4 ) {
    return true;
} else {
    return false;
}

Então, como decidir entre if-else e ternário? Bem, os operadores ternários são usados em cenários simples, quando você só precisa retornar um valor com base em uma condição e nenhum cálculo extra é necessário. Use um if-else para todo o resto, como condições aninhadas, expressões grandes ou quando for preciso mais de uma linha para decidir o valor de retorno.

Você até pode aninhar operadores ternários, mas o código costuma ficar difícil de ler. Nesses casos, prefira ifs aninhados.

// hard to read
int value = expr1 ? expr2 && expr3 ? val1 : (val2 + val3) : expr4;

// easier to read
if (expr1){

    if (expr2 && expr3){

        return val1;
    }

    return val2 + val3;
}
return val4;


Os operadores ternários e as instruções if/else são um bom exemplo de que, na programação, você tem várias formas de chegar ao mesmo resultado.

Para mais exemplos, confira este e este.

Editar via GitHub O link abre em uma nova janela ou aba

Aprenda Operadores ternários