Estruturas Condicionais
Estruturas condicionais permitem que um programa execute diferentes blocos de código com base em condições booleanas (true ou false). Elas são a principal maneira de criar lógica e tomar decisões em C#.
A Estrutura if
A instrução if é a estrutura condicional mais fundamental. Ela executa um bloco de código somente se a condição especificada for true.
Sintaxe:
Exemplo:
A Estrutura if-else
A instrução else pode ser adicionada a um if para executar um bloco de código alternativo quando a condição do if for false.
Sintaxe:
Exemplo:
A Estrutura if-else if-else
Para testar múltiplas condições em sequência, você pode usar a estrutura else if. O C# avaliará as condições na ordem em que aparecem e executará o primeiro bloco de código cuja condição seja true. O bloco else final é opcional e serve como uma condição "pega-tudo" se nenhuma das anteriores for satisfeita.
Sintaxe:
Exemplo:
Variações de Sintaxe e Boas Práticas
Omissão de Chaves ({})
Em C#, se o bloco de código dentro de uma instrução if, else if ou else contém apenas uma única linha de comando, as chaves {} são opcionais.
Exemplo:
A Instrução switch
A instrução switch é uma alternativa à estrutura if-else if-else, ideal para quando você precisa comparar uma única variável contra uma lista de valores constantes.
case: Define um valor a ser comparado com a variável doswitch.break: É obrigatório ao final de cadacasepara sair doswitche impedir a execução do próximocase(fall-through).default: É opcional e funciona como oelsefinal, sendo executado se nenhumcasecorresponder.
Exemplo:
Expressões switch (C# 8.0 e superior)
Versões mais recentes do C# introduziram a expressão switch, uma forma mais moderna e concisa que é especialmente útil para atribuir um valor a uma variável com base em uma condição.
É uma expressão, o que significa que ela retorna um valor.
Usa a sintaxe
=>(lambda).Não precisa de
caseoubreak.Usa o descarte (
_) para o casodefault.Suporta pattern matching avançado.
Exemplo:
Quando Usar if vs. switch
Use
if-else if: Para condições complexas, comparações de intervalos (ex:idade > 18 && idade < 60) ou quando múltiplas variáveis estão envolvidas.Use
switch: Para comparar uma única variável contra um conjunto de valores constantes e distintos. A expressãoswitché a abordagem moderna e preferida quando disponível.