Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Operador Ternário | Estrutura Profunda do Java
Java Avançado

Deslize para mostrar o menu

book
Operador Ternário

Como podemos simplificar uma declaração if-else?

A declaração if pode nem sempre parecer elegante, mas o Java oferece uma forma mais rápida e conveniente de verificar condições. Ela é chamada de operador ternário, e possui a seguinte sintaxe:

condition ? expression_for_true : expression_for_false

Primeiro, define-se uma condição, por exemplo, 10 > 5, e em seguida coloca-se um ponto de interrogação ? após ela. Se a condição for avaliada como true, segue-se para o bloco verdadeiro, por exemplo, System.out.println("That's true");. Se a condição for avaliada como false, segue-se para o bloco falso, onde pode haver algo como System.out.println("That's not true");.

Vamos analisar um exemplo mais prático:

Main.java

Main.java

copy
12345678
package com.example; public class Main { public static void main(String[] args) { System.out.println(10 > 5 ? "That's true" : "That's false"); System.out.println(5 > 6 ? "That's true" : "That's false"); } }

Você pode ter notado que usamos o operador ternário dentro da instrução System.out.println();. Esse é o principal objetivo de utilizar o operador ternário – ele pode ser usado em instruções de saída para reduzir significativamente a quantidade de código.

Também é possível utilizar o operador ternário ao inicializar ou retornar valores. Você aprenderá mais sobre retorno de valores na próxima seção, quando estudar métodos.

Exemplo de uso do operador ternário ao inicializar um valor:

Main.java

Main.java

copy
12345678910
package com.example; public class Main { public static void main(String[] args) { final int a = 10 > 2 ? 5 : 2; final int b = 10 < 2 ? 5 : 2; System.out.println("Variable 'a' has value: " + a); System.out.println("Variable 'b' has value: " + b); } }

Abaixo está um exemplo de código onde o operador ternário é substituído por uma instrução if regular para ajudar a entender melhor como ele funciona:

Main.java

Main.java

copy
1234567891011121314151617181920
package com.example; public class Main { public static void main(String[] args) { int a = 0; int b = 0; if (10 > 2) { a = 5; } else { a = 2; } if (10 < 2) { b = 5; } else { b = 2; } System.out.println("Variable 'a' has value: " + a); System.out.println("Variable 'b' has value: " + b); } }

O resultado é o mesmo, mas é possível perceber quanto espaço economizamos ao utilizar o operador ternário.

Tarefa

Swipe to start coding

  1. Escreva um código que exiba "The string contains Florida" se a string contiver a palavra Florida, ou "Florida is not found" se não contiver.

  2. Utilize o operador ternário para praticar seu uso.

Solução

solution.java

solution.java

Switch to desktopMude para o desktop para praticar no mundo realContinue de onde você está usando uma das opções abaixo
Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 1. Capítulo 6
single

single

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

close

Awesome!

Completion rate improved to 2.63

book
Operador Ternário

Como podemos simplificar uma declaração if-else?

A declaração if pode nem sempre parecer elegante, mas o Java oferece uma forma mais rápida e conveniente de verificar condições. Ela é chamada de operador ternário, e possui a seguinte sintaxe:

condition ? expression_for_true : expression_for_false

Primeiro, define-se uma condição, por exemplo, 10 > 5, e em seguida coloca-se um ponto de interrogação ? após ela. Se a condição for avaliada como true, segue-se para o bloco verdadeiro, por exemplo, System.out.println("That's true");. Se a condição for avaliada como false, segue-se para o bloco falso, onde pode haver algo como System.out.println("That's not true");.

Vamos analisar um exemplo mais prático:

Main.java

Main.java

copy
12345678
package com.example; public class Main { public static void main(String[] args) { System.out.println(10 > 5 ? "That's true" : "That's false"); System.out.println(5 > 6 ? "That's true" : "That's false"); } }

Você pode ter notado que usamos o operador ternário dentro da instrução System.out.println();. Esse é o principal objetivo de utilizar o operador ternário – ele pode ser usado em instruções de saída para reduzir significativamente a quantidade de código.

Também é possível utilizar o operador ternário ao inicializar ou retornar valores. Você aprenderá mais sobre retorno de valores na próxima seção, quando estudar métodos.

Exemplo de uso do operador ternário ao inicializar um valor:

Main.java

Main.java

copy
12345678910
package com.example; public class Main { public static void main(String[] args) { final int a = 10 > 2 ? 5 : 2; final int b = 10 < 2 ? 5 : 2; System.out.println("Variable 'a' has value: " + a); System.out.println("Variable 'b' has value: " + b); } }

Abaixo está um exemplo de código onde o operador ternário é substituído por uma instrução if regular para ajudar a entender melhor como ele funciona:

Main.java

Main.java

copy
1234567891011121314151617181920
package com.example; public class Main { public static void main(String[] args) { int a = 0; int b = 0; if (10 > 2) { a = 5; } else { a = 2; } if (10 < 2) { b = 5; } else { b = 2; } System.out.println("Variable 'a' has value: " + a); System.out.println("Variable 'b' has value: " + b); } }

O resultado é o mesmo, mas é possível perceber quanto espaço economizamos ao utilizar o operador ternário.

Tarefa

Swipe to start coding

  1. Escreva um código que exiba "The string contains Florida" se a string contiver a palavra Florida, ou "Florida is not found" se não contiver.

  2. Utilize o operador ternário para praticar seu uso.

Solução

solution.java

solution.java

Switch to desktopMude para o desktop para praticar no mundo realContinue de onde você está usando uma das opções abaixo
Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

close

Awesome!

Completion rate improved to 2.63

Deslize para mostrar o menu

some-alt