Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Instrução Switch Aprimorada | Estrutura Profunda do Java
Java Avançado

bookInstrução Switch Aprimorada

Como otimizar uma instrução Switch?

Assim como a instrução if possui o operador ternário, a instrução switch possui uma versão aprimorada chamada enhanced switch. Vamos analisar imediatamente a sintaxe:

Main.java

Main.java

copy
123456789101112
switch (variable) { case value1 -> { // code block } case value2 -> { // code block } // additional cases default -> { // code block } }

A instrução enhanced switch utiliza uma sintaxe simplificada com -> em vez de case e break. Permite escrever blocos de código concisos para cada caso diretamente, sem a necessidade de instruções break explícitas.

Vamos analisar um exemplo de uso de uma instrução switch. Primeiro, veja uma instrução switch regular:

Main.java

Main.java

copy
123456789101112131415161718192021
package com.example; public class Main { public static void main(String[] args) { int a = 10; switch (a) { case 5: System.out.println("five"); break; case 0: System.out.println("zero"); break; case 10: System.out.println("ten"); break; default: System.out.println("no value"); break; } } }

Agora vamos substituí-lo pela versão aprimorada para observar a diferença:

Main.java

Main.java

copy
123456789101112131415161718192021
package com.example; public class Main { public static void main(String[] args) { int a = 10; switch (a) { case 5 -> { System.out.println("five"); } case 0 -> { System.out.println("zero"); } case 10 -> { System.out.println("ten"); } default -> { System.out.println("no value"); } } } }

Como pode ser observado, a sintaxe foi alterada e o código ficou mais curto. Além disso, não é mais necessário escrever explicitamente a palavra-chave break; o compilador agora entende que deve interromper a execução do switch após encontrar um dos casos correspondentes.

Dessa forma, é possível simplificar a instrução switch e escrever um código profissional.

1. Qual é a sintaxe do case na instrução Switch aprimorada?

2. É necessário utilizar a palavra-chave break; com o switch aprimorado?

question mark

Qual é a sintaxe do case na instrução Switch aprimorada?

Select the correct answer

question mark

É necessário utilizar a palavra-chave break; com o switch aprimorado?

Select the correct answer

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 1. Capítulo 7

Pergunte à IA

expand

Pergunte à IA

ChatGPT

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

Suggested prompts:

Can you show me a full example of both regular and enhanced switch statements?

What are the main benefits of using the enhanced switch statement?

Are there any limitations or things to watch out for with the enhanced switch?

Awesome!

Completion rate improved to 2.63

bookInstrução Switch Aprimorada

Deslize para mostrar o menu

Como otimizar uma instrução Switch?

Assim como a instrução if possui o operador ternário, a instrução switch possui uma versão aprimorada chamada enhanced switch. Vamos analisar imediatamente a sintaxe:

Main.java

Main.java

copy
123456789101112
switch (variable) { case value1 -> { // code block } case value2 -> { // code block } // additional cases default -> { // code block } }

A instrução enhanced switch utiliza uma sintaxe simplificada com -> em vez de case e break. Permite escrever blocos de código concisos para cada caso diretamente, sem a necessidade de instruções break explícitas.

Vamos analisar um exemplo de uso de uma instrução switch. Primeiro, veja uma instrução switch regular:

Main.java

Main.java

copy
123456789101112131415161718192021
package com.example; public class Main { public static void main(String[] args) { int a = 10; switch (a) { case 5: System.out.println("five"); break; case 0: System.out.println("zero"); break; case 10: System.out.println("ten"); break; default: System.out.println("no value"); break; } } }

Agora vamos substituí-lo pela versão aprimorada para observar a diferença:

Main.java

Main.java

copy
123456789101112131415161718192021
package com.example; public class Main { public static void main(String[] args) { int a = 10; switch (a) { case 5 -> { System.out.println("five"); } case 0 -> { System.out.println("zero"); } case 10 -> { System.out.println("ten"); } default -> { System.out.println("no value"); } } } }

Como pode ser observado, a sintaxe foi alterada e o código ficou mais curto. Além disso, não é mais necessário escrever explicitamente a palavra-chave break; o compilador agora entende que deve interromper a execução do switch após encontrar um dos casos correspondentes.

Dessa forma, é possível simplificar a instrução switch e escrever um código profissional.

1. Qual é a sintaxe do case na instrução Switch aprimorada?

2. É necessário utilizar a palavra-chave break; com o switch aprimorado?

question mark

Qual é a sintaxe do case na instrução Switch aprimorada?

Select the correct answer

question mark

É necessário utilizar a palavra-chave break; com o switch aprimorado?

Select the correct answer

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 1. Capítulo 7
some-alt