if-else (C# Reference)
O if instrução seleciona uma instrução para execução com base no valor de um Boolean expressão. No exemplo a seguir, o Boolean variável result for definido como true e, em seguida, check-in a if instrução. A saída é: The variable is set to true.
bool result = true;
if (result)
{
Console.WriteLine("The variable is set to true.");
}
else
{
Console.WriteLine("The variable is set to false.");
}
Se a expressão em parênteses é avaliada como true, em seguida, a Console.WriteLine("The variable is set to true."); instrução é executada. Depois de executar o if declaração de controle é transferida para a próxima instrução. O bloco else não é executado neste exemplo.
Se você desejar executar mais de uma instrução dependendo do valor da expressão booleana, basta incluir as instruções em um bloco usando {}, conforme o exemplo acima.
O comando (s) a ser executada durante a condição de teste pode ser de qualquer tipo, incluindo outra if instrução aninhados em original if instrução. Aninhado em if instruções, o else cláusula pertence à última if que não tem um correspondente else. Por exemplo:
int x = 12;
int y = 18;
if (x > 10)
if (y > 20)
Console.Write("Statement_1");
else
Console.Write("Statement_2");
Neste exemplo, Statement_2 será exibido se a condição de (y > 20) for avaliada como false. No entanto, se você deseja associar Statement_2 com a condição (x >10), você deverá usar chaves para delimitar os blocos:
if (x > 10)
{
if (y > 20)
Console.Write("Statement_1");
}
else
Console.Write("Statement_2");
Nesse caso, Statement_2 será exibido se a condição de (x > 10) for avaliada como false
Exemplo
Neste exemplo, você digita um caractere no teclado e o programa verifica se o caractere de entrada é um caractere alfabético. Se for, ele verifica se é minúscula ou maiúscula. Em cada caso, a mensagem apropriada será exibida.
class IfTest
{
static void Main()
{
Console.Write("Enter a character: ");
char c = (char)Console.Read();
if (Char.IsLetter(c))
{
if (Char.IsLower(c))
{
Console.WriteLine("The character is lowercase.");
}
else
{
Console.WriteLine("The character is uppercase.");
}
}
else
{
Console.WriteLine("Not an alphabetic character.");
}
}
/*
Input:
2
Sample Output
Enter a character: 2
The character is not an alphabetic character.
Additional sample might look as follows:
Run #2:
Enter a character: A
The character is uppercase.
Run #3:
Enter a character: h
The character is lowercase.
* */
}
Também é possível estender o if a instrução para lidar com várias condições, usando a disposição de else if a seguir:
if (Condition_1)
{
// Statement_1;
}
else if (Condition_2)
{
// Statement_2;
}
else if (Condition_3)
{
// Statement_3;
}
else
{
// Statement_n;
}
Este exemplo verifica se o caractere de entrada é maiúsculo, minúsculo, ou um número. Caso contrário, não é um caractere alfanumérico. O programa faz uso de um conjuto de instruções else-if .
public class IfTest3
{
static void Main()
{
Console.Write("Enter a character: ");
char c = (char)Console.Read();
if (Char.IsUpper(c))
{
Console.WriteLine("Character is uppercase.");
}
else if (Char.IsLower(c))
{
Console.WriteLine("Character is lowercase.");
}
else if (Char.IsDigit(c))
{
Console.WriteLine("Character is a number.");
}
else
{
Console.WriteLine("Character is not alphanumeric.");
}
}
}
/*
Sample Input: E
Sample Output:
Enter a character: E
The character is uppercase.
Additional sample runs might look as follows:
Run #2
Enter a character: e
The character is lowercase.
Run #3:
Enter a character: 4
The character is a number.
Run #4:
Enter a character: $
The character is not alphanumeric.
*/
Especificação da linguagem C#
Para obter mais informações, consulte C# Language Specification A especificação de linguagem é a fonte definitiva para a sintaxe e o uso de C#.
Consulte também
Referência
?: Operador (referência de C#)