Operador ternário em Java

O operador ternário em Java é uma maneira concisa de executar uma expressão condicional e é uma forma abreviada de um if-else simples. Ele é útil para atribuições e retornos de valores baseados em uma condição.

Sintaxe Operador ternário em Java

A sintaxe do operador ternário é:

condição ? expressão1 : expressão2;
  • condição: Uma expressão que resulta em true ou false.
  • expressão1: A expressão que será avaliada e retornada se a condição for true.
  • expressão2: A expressão que será avaliada e retornada se a condição for false.

Exemplos

Exemplo Básico de Operador ternário em Java

Aqui está um exemplo básico que usa o operador ternário para determinar se um número é par ou ímpar:

public class ExemploTernario {
    public static void main(String[] args) {
        int numero = 10;
        String resultado = (numero % 2 == 0) ? "Par" : "Ímpar";
        System.out.println("O número é: " + resultado);
    }
}

Neste exemplo:

  • A condição é numero % 2 == 0.
  • Se a condição for verdadeira (true), resultado será “Par”.
  • Se a condição for falsa (false), resultado será “Ímpar”.

Atribuição com Operador Ternário

O operador ternário também pode ser usado para atribuir valores a variáveis:

public class ExemploAtribuicaoTernario {
    public static void main(String[] args) {
        int idade = 18;
        String tipoDeEntrada = (idade >= 18) ? "Entrada Adulto" : "Entrada Infantil";
        System.out.println("Tipo de entrada: " + tipoDeEntrada);
    }
}




Neste exemplo:

  • Se a idade for maior ou igual a 18, tipoDeEntrada será "Entrada Adulto".
  • Caso contrário, tipoDeEntrada será “Entrada Infantil”.

Uso em Métodos

Você também pode usar o operador ternário em métodos para retornar valores com base em uma condição:

public class ExemploMetodoTernario {
    public static void main(String[] args) {
        System.out.println(obterDescricao(25));
        System.out.println(obterDescricao(15));
    }

    public static String obterDescricao(int idade) {
        return (idade >= 18) ? "Adulto" : "Menor de idade";
    }
}

Neste exemplo:

  • O método obterDescricao usa o operador ternário para retornar “Adulto” se a idade for maior ou igual a 18, e “Menor de idade” caso contrário.

Considerações

  • Legibilidade: O operador ternário é útil para expressões simples, mas pode reduzir a legibilidade se usado para condições complexas. Nesses casos, uma estrutura if-else pode ser mais clara.
  • Ninho de Ternários: Embora seja possível aninhar operadores ternários, isso pode tornar o código difícil de entender. É melhor evitar aninhamentos excessivos ou complexos.

Se precisar de mais informações ou tiver outras perguntas sobre o operador ternário, estou à disposição!