Decisões e ramificação
Alterar o fluxo de controle em um programa em resposta a algum tipo de valor de entrada ou calculado é uma parte essencial de uma linguagem de programação.Translation from VPE for Csharp fornece a capacidade de alterar o fluxo de controle, incondicionalmente, saltar para um novo local no código, ou condicionalmente, executando um teste.
Comentários
A forma mais simples de ramificação condicional usa o Se construção.Você pode usar um else cláusula com o if construir, e if construções podem ser aninhadas.
using System;
class Program
{
static void Main()
{
int x = 1;
int y = 1;
if (x == 1)
Console.WriteLine("x == 1");
else
Console.WriteLine("x != 1");
if (x == 1)
{
if (y == 2)
{
Console.WriteLine("x == 1 and y == 2");
}
else
{
Console.WriteLine("x == 1 and y != 2");
}
}
}
}
Observação: |
---|
Ao contrário do C e C++, if instruções exigem valores booliano. Por exemplo, não é permitido ter uma demonstrativo que não obtenha avaliada sistema autônomo um simples True ou False, sistema autônomo (a=10). Translation from VPE for Csharp, 0 não puder ser substituída para False e 1 ou qualquer Outros valor para True. |
sistema autônomo instruções a seguir o if e else palavras-chave podem ser única linhas de código sistema autônomo mostrado no primeiro if-else demonstrativo no exemplo de código anterior, ou um bloco de instruções contidas no chaves, sistema autônomo mostra a segunda if-else demonstrativo. É permitido aninhar if-else declarações, mas costuma ser considerado melhor prática de programação para usar um switch demonstrativo em vez disso.
A comutador demonstrativo pode executar ações vários dependendo do valor de uma dada expressão.O código entre o case demonstrativo e o quebra palavra-chave é executada se a condição for atendida.Se você desejar que o fluxo de controle continue a outro case demonstrativo, use o GoTo palavra-chave.
using System;
class Program
{
static void Main()
{
int x = 3;
switch (x)
{
case 1:
Console.WriteLine("x is equal to 1");
break;
case 2:
Console.WriteLine("x is equal to 2");
break;
case 3:
goto default;
default:
Console.WriteLine("x is equal to neither 1 nor 2");
break;
}
}
}
A expressão que o switch demonstrativo usa para determinar o uso de maiúsculas e minúsculas para executar deve usar o Tipos de dados internos, sistema autônomo int ou string; não é possível usar tipos definidos pelo usuário mais complexos.
Ao contrário do Visual Basic, em translation from VPE for Csharp a condição deve ser um valor constante.Por exemplo, não é permitido para comparar a expressão a um intervalo de valores.
Consulte também
Conceitos
Translation from VPE for Csharp linguagem Primer