SWITCH C# 9 — nova sintaxe
Você que é desenvolvedor C# sabe que a sintaxe de um código muitas vezes pode ser melhorada, e muito. No C# 9 o time resolveu reescrever a sintaxe do comando SWITCH, e ficou fantástica.
Vamos a um projeto prático de Console App em C#. A ideia é criar 2 classes de dados com propriedades para que possamos aplicar uma condição de acordo com o valor passado pelo usuário, e assim, efetuar um cálculo.
Portanto, crie a classe Carro contendo a propriedade Passageiros do tipo inteiro (int). E a classe Caminhao com a propriedade Eixos do tipo inteiro (int).
No Program.cs crie um método estático chamado CalcularPedagio que recebe como parâmetro o objeto carro ou caminhão. O método retorna um tipo decimal (m). Em seguida, digite os caracteres => para atribuir o conjunto de códigos a ser processado. Para o switch a sintaxe ficou mais fácil, onde primeiro você informa a variável seguido do switch, neste caso, veiculo switch.
O bloco de código identifica o tipo de objeto e aplica uma conta, neste caso, se for um carro, o valor do pedágio será R$ 3; se for um caminhão, o valor será R$ 4.50. Note a linha do throw new, que é o valor default, ou seja, se não for nenhuma das condições, o fluxo cai no valor default. Observe como que é a declaração do default, apenas o caracter _ seguido do => com o código.
Neste caso, se o objeto fornecido for diferente de carro ou caminhão, o retorno será uma Exception.
No método static void Main(), que é onde o CalcularPedagio será chamado, digite o seguinte código. Temos as variáveis carro e caminhão contendo as intâncias dos objetos em si.
O Writeline usa interpolação de strings para mostrar a mensagem. Note que a chamada do CalcularPedagio é passado o objeto em si, assim o método idetifica através do switch se é um carro ou caminhão e retorna o valor.
Veja o resultado da execução.
No entanto os objetos tem suas propriedades e o pedágio deverá ser cobrado para o carro de acordo com o número de passageiros, e para o caminhão conforme o número de eixos. Portanto, adicione tais propriedades na instância dos objetos Carro com Passageiros = 6 e Caminhão com Eixos = 5.
E, no CalcularPedagio altere o código contendo as respectivas propriedades, neste caso, para Carro com nenhum passageiro (Passageiros: 0) o valor do pedágio é de 2.00 + 0.50 (2.5, até poderia colocar o valor direto, mas fiz assim para mostrar que há um incentivo de 0.50 com mais passageiros); com Passageiros: 1 o valor é 2.00; com Passageiros: 2 o valor é 1.50.
No caso de Caminhao a ideia é a mesma só que para o número de eixos.
Execute o código e veja o resultado.
Conclusão
Programar é uma caixa de surpresas, cada desenvolvedor terá uma solução diferente e funcionando, basta dar aulas para ver isto na prática. E, esta nova sintaxe do switch achei fantástica e de fácil aplicação.
E crie o hábito de compartilhar os códigos com quem precisa, um dia será sua vez de precisar de ajuda. Bons estudos e sucesso nos projetos.
Repositório do código fonte:
Renato Haddad
Microsoft Most Valuable Professional
rehaddad@msn.com