Vamos aprender como utilizar Switch no C#. Para isso faremos um exemplo simples e útil, um método para converter mês numérico (02) para texto (Fevereiro).
O Switch serve para verificar determinado valor e comparar com outros valores, caso seja igual ele executa o código. Tem a mesma utilidade que um IF porém de maneira mais completa, sendo que pode-se verificar diversos casos diferentes e escolher uma ação a executar a cada valor. O código abaixo poderia ser feitos com diversos IF’s, porém, ao utilizar o Switch seu código fica mais limpo, organizado e fácil de entender.
Vamos ao exemplo:
public string converteMes(int mes) { string mesConvertido = ""; switch (mes) { case 1: mesConvertido = "Janeiro"; break; case 2: mesConvertido = "Fevereiro"; break; case 3: mesConvertido = "Março"; break; case 4: mesConvertido = "Abril"; break; case 5: mesConvertido = "Maio"; break; case 6: mesConvertido = "Junho"; break; case 7: mesConvertido = "Julho"; break; case 8: mesConvertido = "Agosto"; break; case 9: mesConvertido = "Setembro"; break; case 10: mesConvertido = "Outubro"; break; case 11: mesConvertido = "Novembro"; break; case 12: mesConvertido = "Dezembro"; break; default: mesConvertido = "Janeiro"; break; } return mesConvertido; }
Explicação:
Linha 1: Criamos um método chamado converteMes que recebe um valor numérico (int) chamado mes.
Linha 3: Criamos uma string chamada mesConvertido vazia.
Linha 5: Criamos o Switch e dizemos que a variavel mes (int) é a base para as comparações.
Linha 7, 8 e 9: Caso o mes for 1 (case 1:) então preenchemos a variável mesConvertido com o valor Janeiro. O break serve para indicar ao Switch que acaba ali a ação dessa condição.
Linha 10-42: O mesmo se repete aos outros meses.
Linha 43-45:Utilizamos default ao invés de case. Isso serve para dizer ao Switch que caso nenhuma das comparações retornem resultado, então executa o valor padrão (default) que no nosso exemplo é Janeiro.
Linha 49: Retorna a variável mesConvertido.
Nosso método com Switch está pronto, agora para chamar o método utilizamos o seguinte código:
string mes = converteMes(2);
O código acima vai chamar o método converteMes que vai retornar Fevereiro para a variável mes, visto que passamos o valor 2.
Podemos utilizar este código para mostrar o mês atual, visto que DateTime.Now.Month nos retorna apenas em valor numérico, sendo assim, usamos o código acima e convertemos o mês atual em texto. Dessa forma:
string mes = converteMes(DateTime.Now.Month); //pegando o mês atual em texto (ex. Janeiro)
Bom, é isso pessoal, espero que tenham gostado 🙂
Link permanente
Pode-se utilizar, DateTime.Now.ToString(“MMMM”)
Link permanente
Muito bom o artigo!!!