Menu
Coddy logo textTech

Ternary Operator

Parte da seção Fundamentos do Journey de Java da Coddy — lição 30 de 73.

O operador ternário é uma declaração if-else de uma única linha simples. Ele tem a seguinte sintaxe:

variable = (condition) ? value_if_true : value_if_false;

O operador ternário avalia a condição. Se for true, ele atribui value_if_true à variável; caso contrário, ele atribui value_if_false.

Por exemplo:

int age = 20;
String message = (age >= 18) ? "Adult" : "Minor";

Neste exemplo, como age é maior ou igual a 18, message será atribuído o valor "Adult". Se age fosse menor que 18, message seria atribuído "Minor".

Você pode aninhar operadores ternários para lidar com múltiplas condições:

int score = 75;
String grade = (score >= 90) ? "A" : (score >= 80) ? "B" : (score >= 70) ? "C" : "F";

Isso verifica múltiplas condições em ordem. Se score >= 90, grade é "A"; senão se score >= 80, grade é "B"; senão se score >= 70, grade é "C"; caso contrário "F".

Nota: Operadores ternários aninhados podem ser difíceis de ler. Para condições complexas, use instruções if-else em vez disso.

challenge icon

Desafio

Iniciante

Crie um programa que verifica se um número é positivo, negativo ou zero usando o operador ternário. O programa deve:

  1. Receber um inteiro como entrada do usuário.
  2. Usar o operador ternário para determinar se o número é positivo, negativo ou zero.
  3. Imprimir o resultado no formato: "The number is [positive/negative/zero]".

Folha de consulta

O operador ternário é uma declaração if-else de uma linha com a sintaxe:

variable = (condition) ? value_if_true : value_if_false;

Ele avalia a condição e atribui value_if_true se a condição for true, caso contrário atribui value_if_false.

Exemplo:

int age = 20;
String message = (age >= 18) ? "Adult" : "Minor";

Operadores ternários aninhados para lidar com múltiplas condições:

int score = 75;
String grade = (score >= 90) ? "A" : (score >= 80) ? "B" : (score >= 70) ? "C" : "F";

Isso verifica múltiplas condições em ordem. Se score >= 90, grade é "A"; senão se score >= 80, grade é "B"; senão se score >= 70, grade é "C"; caso contrário "F".

Nota: Operadores ternários aninhados podem ser difíceis de ler. Para condições complexas, use declarações if-else em vez disso.

Experimente você mesmo

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int number = scanner.nextInt();
        String result = "";
        
        // Escreva seu código abaixo
        
        
        System.out.println("The number is " + result);
        scanner.close();
    }
}
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Fundamentos