2
respostas

Variável declarada antes do comando switch

Bom dia!

Estou com uma pequena dúvida referente a variável declarada - int mes = 10; A pergunta é por que recebe 10 em vez de 12? Não são 12 meses?

public class TestaMes {

public static void main(String[] args) {

    int mes = 10;

    switch (mes) {
        case 1:
            System.out.println("O mês é Janeiro");
            break;
        case 2:
            System.out.println("O mês é Fevereiro");
            break;
        case 3:
            System.out.println("O mês é Março");
            break;
        case 4:
            System.out.println("O mês é Abril");
            break;
        case 5:
            System.out.println("O mês é Maio");
            break;
        case 6:
            System.out.println("O mês é Junho");
            break;
        case 7:
            System.out.println("O mês é Julho");
            break;
        case 8:
            System.out.println("O mês é Agosto");
            break;
        case 9:
            System.out.println("O mês é Setembro");
            break;
        case 10:
            System.out.println("O mês é Outubro");
            break;
        case 11:
            System.out.println("O mês é Novembro");
            break;
        case 12:
            System.out.println("O mês é Dezembro");
            break;
        default:
            System.out.println("Mês inválido");
            break;
    }
}

}

2 respostas

O switch recebe como parâmetro para teste o que você passar entre os parenteses, nesse caso a variável mês, o objetivo do switch é verificar se esse parâmetro que você procura vai bater com algum dos cases, nesse exemplo o case 10 vai bater e vai imprimir "O mês é Outubro", se trocarmos o valor da variável mes para 12, ele vai bater com o case 12 e vai imprimir "O mês é Dezembro".

Ah! Entendi. Obrigado Angelo!