instrução switch em java
UMA switchinstrução permite que uma variável seja testada quanto à igualdade em relação a uma lista de valores. Cada valor é chamado de caso, e a variável sendo ativada é verificada para cada caso.
Sintaxe
A sintaxe do loop for aprimorado é -
switch(expression) {
case value :
// Statements
break; // optional
case value :
// Statements
break; // optional
// You can have any number of case statements.
default : // Optional
// Statements
}
As seguintes regras se aplicam a um switch declaração -
A variável usada em uma instrução switch só pode ser inteiros, inteiros conversíveis (byte, short, char), strings e enums.
Você pode ter qualquer número de declarações de caso em um switch. Cada caso é seguido pelo valor a ser comparado e dois pontos.
O valor para um caso deve ser o mesmo tipo de dados que a variável na chave e deve ser uma constante ou literal.
Quando a variável que está sendo ativada é igual a um caso, as instruções após esse caso serão executadas até que uma instrução break seja alcançada.
Quando uma instrução break é alcançada, o switch termina e o fluxo de controle pula para a próxima linha após a instrução switch.
Nem todo caso precisa conter uma pausa. Se nenhuma interrupção aparecer, o fluxo de controle cairá para os casos subsequentes até que uma interrupção seja alcançada.
Uma instrução switch pode ter um caso padrão opcional, que deve aparecer no final do switch. O caso padrão pode ser usado para executar uma tarefa quando nenhum dos casos for verdadeiro. Nenhuma pausa é necessária no caso padrão.
Diagrama de fluxo
Exemplo
public class Test {
public static void main(String args[]) {
// char grade = args[0].charAt(0);
char grade = 'C';
switch(grade) {
case 'A' :
System.out.println("Excellent!");
break;
case 'B' :
case 'C' :
System.out.println("Well done");
break;
case 'D' :
System.out.println("You passed");
case 'F' :
System.out.println("Better try again");
break;
default :
System.out.println("Invalid grade");
}
System.out.println("Your grade is " + grade);
}
}
Compile e execute o programa acima usando vários argumentos de linha de comando. Isso produzirá o seguinte resultado -
Resultado
Well done
Your grade is C