Instruçã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
123456789101112switch (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
123456789101112131415161718192021package 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
123456789101112131415161718192021package 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?
Obrigado pelo seu feedback!
Pergunte à IA
Pergunte à IA
Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo
Awesome!
Completion rate improved to 2.63
Instruçã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
123456789101112switch (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
123456789101112131415161718192021package 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
123456789101112131415161718192021package 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?
Obrigado pelo seu feedback!