A instrução break
é necessária no caso 1 e no caso 3. Se você a omitir, o código não será compilado, porque o if
body não tem garantia de execução e o fall-through em switch
instruções é não permitido em c #.
A instrução break
não é necessária no caso 0 e no caso 2, porque o return
sempre é executado; a execução de código nunca alcançará a instrução break
. O compilador emitirá um aviso se você incluir a instrução break
, mas o código será compilado.
Não ter as declarações break
pode ser útil para simplificar determinadas funções de mapeamento ou fábrica:
public string NumericString(int digit)
{
switch (digit)
{
case 1: return "one";
case 2: return "two";
case 3: return "three";
// ..etc.
}
}
Se você precisar de um comportamento simples, poderá simulá-lo com um goto
, um dos poucos lugares na linguagem C # em que usar um goto
realmente faz sentido, embora seja discutível se isso constitui ou não um bom estilo .