Interruptor Java

O switch Java é coberto para melhor atender às necessidades de aprendizagem dos alunos. As instruções switch são mais eficientes do que escrever várias instruções if-else .

instruções de troca de java

Comandos Java Switch

Usando Java switch , você pode executar um dos muitos blocos de código usando a instrução switch – Basicamente, é uma instrução ladder com condições if-else-if.

A instrução switch aceita bytes |  calções |  ints |  longos |  enumerações |  strings  e alguns tipos de wrapper .

Sintaxe do interruptor:

switch(expression) {
case x:
// code block to be executed if case x value matches
break;
case y:
// code block to be executed if case y value matches
break;
default:
// code block if not case value matches
}

Strings agora são permitidas em instruções switch no Java 7.

Veja como funciona:

  • As expressões switch são analisadas uma vez.
  • Os valores de expressão são comparados com os valores de caso .
  • Um bloco de código associado é executado se houver uma correspondência.
  • As palavras-chave default e break são opcionais e serão abordadas posteriormente.

Abaixo está um exemplo de como o nome do mês pode ser calculado usando o número do mês:

Example: 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
public class Main {
public static void main(String[] args) { int month_number = 7; switch (month_number) {
case 1:
System.out.println("January");
break;
case 2:
System.out.println("February");
break;
case 3:
System.out.println("March");
break;
case 4:
System.out.println("April");
break;
case 5:
System.out.println("May");
break;
case 6:
System.out.println("June");
break;
case 7:
System.out.println("July");
break;
case 8:
System.out.println("August");
break;
case 9:
System.out.println("September");
break;
case 10:
System.out.println("October");
break;
case 11:
System.out.println("November");
break;
case 12:
System.out.println("December");
break; }
// Outputs Monthname="July" as month_number=7
}
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Example: 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
public class Main {
public static void main(String[] args) {
char alphabet = 'b';
switch (alphabet) {
case 'a':
System.out.println("This is an alphabet a");
break;
case 'b':
System.out.println("This is an alphabet b");
break;
case 'c':
System.out.println("This is an alphabet c");
break;
case 'd':
System.out.println("This is an alphabet d");
break;
case 'e':
System.out.println("This is an alphabet e");
break;
case 'f':
System.out.println("This is an alphabet f");
break;
}
// Output: This is an alphabet b
}
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

As instruções switch testam uma variável em relação a vários valores para determinar sua igualdade .



Palavra-chave de quebra de Java

Java sai de um bloco switch quando atinge a palavra-chave break .

Como resultado, mais testes de código e caso serão interrompidos dentro do bloco.

Depois que uma correspondência é encontrada e o trabalho é concluído, é hora de fazer uma pausa. Mais testes não são necessários.

Como um break ignora o restante do código do bloco switch, ele pode economizar muito tempo de execução.


Palavra-chave Java padrão

Se nenhuma correspondência for encontrada, a palavra-chave padrão executará o seguinte código:

Example: 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
public class Main {
public static void main(String[] args) { int month_number = 4; switch (month_number) {
case 1:
System.out.println("January");
break;
case 2:
System.out.println("February");
break;
case 3:
System.out.println("March");
break;
default:
System.out.println("No Case matched !! Default code is executed "); }
// Output = No Case matched !! Default code is executed
}
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Example: 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
public class Main {
public static void main(String[] args) {
String day_name = "Satunday"; // We have assigned the string day_name the wrong value 'Satunday' to check the working of the default box
switch (day_name) {
case "Monday":
System.out.println("Today is Monday");
break;
case "Tuesday":
System.out.println("Today is Tuesday");
break;
case "Wednesday":
System.out.println("Today is Wednesday");
break;
case "Thursday":
System.out.println("Today is Thursday");
break;
case "Friday":
System.out.println("Today is Friday");
break;
case "Saturday":
System.out.println("Today is Saturday");
break;
case "Sunday":
System.out.println("Today is Sunday");
break;
default:
System.out.println("No name matched !! Wrong day name ");
}
}
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Um bloco switch não requer uma interrupção quando a instrução padrão é especificada como a última instrução.


O que você precisa saber?

  1. Os valores de caso podem ter rótulos padrão opcionais.
  2. Deve haver um valor único para cada caso . Um erro será lançado em tempo de compilação se o valor for duplicado.
  3. A expressão de switch Java pode ter um ou N valores de caso.
  4. Somente expressões switch podem ser usadas como valores case. Os valores de caso devem ser literais ou constantes. Variáveis ​​não são permitidas.
  5. As instruções break são opcionais nas instruções case. À medida que o controle alcança a instrução break , ele salta para o controle após a expressão switch. Ele executa o próximo caso se não houver instrução break.
  6. Em Java, byte, short, int, long (com wrapper), enums e strings devem ser usados ​​como expressões switch .
  7. As instruções switch Java podem ser colocadas entre outras instruções switch. Uma instrução switch aninhada é como ela é chamada.

 

Nós valorizamos o seu feedback.
+1
0
+1
0
+1
0
+1
0
+1
0
+1
0
+1
0

Assine a nossa newsletter
Digite seu e-mail para receber um resumo semanal de nossos melhores posts. Saber mais!
ícone