Clique sobre os tópicos listados abaixo para navegar até o conteúdo desejado.

  1. Entender o comando switch
  2. Usar Switch com strings
  3. Usar switch com enumerador
  4. Usar switch com múltiplos cases
  5. match pattern

Para fazermos escolhas na linguagem Java, usamos o comando switch que irá comparar um valor a um grupo de casos e executar um trecho para um caso específico quando o retorno da comparação é verdadeira.

Os comandos de escolha bem como o seus funcionamentos já foram discutidos em Portugol: Comando de Escolha sendo a leitura recomendada.

O comando switch utiliza outro comando, o comando break para interromper a execução do comando switch. Para ver como funciona o comando break visite Java Comandos: Comando Break.

Para fazermos escolhas em Java, utilizamos o comando switch que possui sua sintaxe apresentada abaixo. O comando switch utiliza o comando break como parte de sua sintaxe.

Fig. 1: Comando switch
Sintaxe
switch(condicao)
{
	case caso1: 
	//seu codigo aqui
	break;
	case caso2: 
	//seu codigo aqui
	break;
	default:
	//seu codigo aqui
	break;
}

O caso default é opcional. Com esse caso, podemos executar algum trecho de código caso o valor não seja igual a algum dos valores da cláusula case.

Exemplo 1
public class Main
{
	public static void main(String[] args) 
	{
	    
        int a = 2;
           
        switch(a){
            case 0 : System.out.println("UM"); break;
            case 1 : System.out.println("DOIS"); break;
            default : System.out.println("invalido"); break;
        }
	}
}
Saída
invalido

Java permite que strings sejam utilizadass nos cases do comando switch, não limitando-se apenas ao tipo int como mostrado acima.

Exemplo 2
public class Main
{
	public static void main(String[] args) 
	{
	    
        String a="teste0";
           
        switch(a){
            case "teste0" : System.out.println("teste0"); break;
            case "teste1" : System.out.println("teste1"); break;
            case "teste2" : System.out.println("teste2"); break;
            default : System.out.println("invalido"); break;
        }
	}
}
Saída
teste0

Java, assim como C/C++, permite que o switch seja utilizando em conjunto com enumeradores. O tipo de dado enum pode ser visto em Java Básico: Enum.

Exemplo 3
public class Main
{
    enum opcoes{
        UM,
        DOIS
    };
    
	public static void main(String[] args){
        opcoes a = opcoes.UM;
           
        switch(a){
            case UM : System.out.println("UM"); break;
            case DOIS : System.out.println("DOIS"); break;
            default : System.out.println("invalido"); break;
        }
	}
}
Saída
UM

Para a execução de um mesmo trecho de código para mais de uma caso, basta adicionar as cláusulas case em sequência ou um abaixo do outra separadas por (:).

Exemplo 3
public class Main
{
    enum opcoes 
    {
        UM,
        DOIS
    };
    
	public static void main(String[] args) 
	{
        opcoes a = opcoes.UM;
           
        switch(a){
            case UM : 
            case DOIS : System.out.println("UM ou DOIS"); break;
            default : System.out.println("invalido"); break;
        }
	}
}
Saída
UM ou DOIS
  1. 23/07/2025 - revisão 4 - correção em target de links; ajustes pontuais
  2. 23/09/2024 - revisão 3 - remoção de import em exemplos; ajustes gramaticais e outros
  3. 02/09/2024 - revisão 2 - Correção em link de objeto: múltiplos cases
  4. 06/02/2024 - revisão 1 - correção em navegação e erros gramaticais
  5. 04/09/2023 - versão inicial