O operador ternário do Java é o único operador condicional que leva três operandos. O operador ternário do Java é uma substituição de uma linha para a instrução if-then-else e é muito utilizado na programação Java. Podemos usar o operador ternário para substituir o switch também, como mostrado no exemplo abaixo.
Operador Ternário do Java
O primeiro operando no operador ternário do Java deve ser um booleano ou uma declaração com resultado booleano. Se o primeiro operando for true, então o operador ternário do Java retorna o segundo operando, caso contrário, retorna o terceiro operando. A sintaxe do operador ternário do Java é:
resultado = declaraçãoTeste ? valor1 : valor2;
Se a declaraçãoTeste for verdadeira, então valor1 é atribuído à variável resultado, caso contrário, valor2 é atribuído à variável resultado. Vamos ver um exemplo de operador ternário do Java em um programa Java simples.
package com.journaldev.util;
public class TernaryOperator {
public static void main(String[] args) {
System.out.println(getMinValue(4,10));
System.out.println(getAbsoluteValue(-10));
System.out.println(invertBoolean(true));
String str = "Australia";
String data = str.contains("A") ? "Str contains 'A'" : "Str doesn't contains 'A'";
System.out.println(data);
int i = 10;
switch (i){
case 5:
System.out.println("i=5");
break;
case 10:
System.out.println("i=10");
break;
default:
System.out.println("i is not equal to 5 or 10");
}
System.out.println((i==5) ? "i=5":((i==10) ? "i=10":"i is not equal to 5 or 10"));
}
private static boolean invertBoolean(boolean b) {
return b ? false:true;
}
private static int getAbsoluteValue(int i) {
return i<0 ? -i:i;
}
private static int getMinValue(int i, int j) {
return (i<j) ? i : j;
}
}
A saída do programa Java do operador ternário acima é:
4
10
false
Str contains 'A'
i=10
i=10
Como você pode ver, estamos usando o operador ternário do Java para evitar instruções if-then-else e switch case. Dessa forma, estamos reduzindo o número de linhas de código no programa Java. Isso é tudo para uma rápida visão geral do operador ternário em Java.
Source:
https://www.digitalocean.com/community/tutorials/java-ternary-operator