Ponto de interrogação e dois pontos em Java

Mohammad Irfan 12 outubro 2023
  1. Use o ponto de interrogação e o operador de dois pontos em Java
  2. Use o ponto de interrogação aninhado e o operador de dois pontos em Java
Ponto de interrogação e dois pontos em Java

Este tutorial apresenta como usar o ponto de interrogação e o operador de dois pontos em Java e lista alguns códigos de exemplo para entender o tópico.

Os operadores de ponto de interrogação e dois pontos são chamados coletivamente de operadores ternários em Java porque funcionam em três operandos.

É a solução abreviada da instrução if ... else em Java e pode ser usada como uma instrução de uma única linha para a tomada de decisão. Vamos ver alguns exemplos.

Use o ponto de interrogação e o operador de dois pontos em Java

O operador ternário consiste em três segmentos. A primeira é uma expressão condicional que retorna um valor booleano. O segundo e o terceiro são os valores antes e depois dos dois pontos. Ele retorna o valor antes dos dois pontos se a expressão condicional for avaliada como true; caso contrário, ele retorna o valor depois. Sua sintaxe está abaixo.

condition ? value1 : value2;

Veja o exemplo abaixo.

public class SimpleTesting {
  public static void main(String[] args) {
    int a = 10;
    int b = 20;
    boolean result = a > b ? true : false;
    System.out.println(result);
  }
}

Resultado:

false

Podemos obter o valor de retorno de qualquer tipo do operador ternário. No exemplo a seguir, passamos valores de string e obtemos um valor de string retornado com base na condição.

public class SimpleTesting {
  public static void main(String[] args) {
    int a = 10;
    int b = 20;
    String result = a > b ? "True" : "False";
    System.out.println(result);
  }
}

Resultado:

False

O exemplo a seguir é um caso de uso do operador ternário em Java. Usamos esta instrução condicional de linha única para verificar se a string fornecida está em minúsculas e convertê-la em maiúsculas se a string estiver em minúsculas; caso contrário, ele retorna a string original.

public class SimpleTesting {
  public static void main(String[] args) {
    String str = "mango";
    String result = str.equals(str.toLowerCase()) == true ? str.toUpperCase() : str;
    System.out.println(result);
  }
}

Resultado:

MANGO

Este é outro caso de uso do operador ternário, onde verificamos se o inteiro fornecido é um inteiro positivo ou não e retorna um valor de string. Veja o exemplo abaixo.

public class SimpleTesting {
  public static void main(String[] args) {
    int val = 10;
    String result = val > 0 ? "Positive Integer" : "Negative Integer";
    System.out.println(result);
  }
}

Resultado:

Positive Integer

Use o ponto de interrogação aninhado e o operador de dois pontos em Java

Neste exemplo, usamos o operador ternário aninhado para verificar se podemos fazer isso como fazemos com a instrução if ... else. Aqui, primeiro verificamos se o inteiro fornecido é um inteiro positivo e, em seguida, verificamos se ele está entre um intervalo especificado e retorna um valor de string. Veja o exemplo abaixo.

public class SimpleTesting {
  public static void main(String[] args) {
    int val = 10;
    String result = val > 0 ? (val > 5) ? "Greater Than 5" : "Less Than 5" : "Negative Integer";
    System.out.println(result);
  }
}

Resultado:

Greater Than 5

Artigo relacionado - Java Operator