Sterowanie przebiegiem wykonywania kodu za pomocą instrukcji if, else if i else
Wskazówka
Aby uzyskać więcej szczegółów, zobacz kartę Tekst i obrazy .
if Pojedyncza instrukcja może obsługiwać tylko jeden wynik. Aby obsłużyć alternatywne wyniki, język C# udostępnia słowa kluczowe else i else if.
Dodawanie alternatywnej ścieżki za pomocą else
Użyj else, aby uruchomić inny blok kodu, gdy warunek ma wartość false:
int total = 12;
if (total >= 15)
{
Console.WriteLine("You win!");
}
else
{
Console.WriteLine("Sorry, you lose.");
}
Łączenie warunków za pomocą else if
Jeśli masz więcej niż dwa możliwe wyniki, dodaj else if bloki, aby sprawdzić dodatkowe warunki:
int total = 12;
if (total >= 16)
{
Console.WriteLine("You win a new car!");
}
else if (total >= 10)
{
Console.WriteLine("You win a new laptop!");
}
else if (total == 7)
{
Console.WriteLine("You win a trip for two!");
}
else
{
Console.WriteLine("You win a kitten!");
}
Pierwsze zwycięstwo w meczu
Język C# sprawdza każdy warunek w kolejności i uruchamia pierwszy blok, którego warunek to true. Pomija następnie każdy kolejny warunek, nawet jeśli w przeciwnym razie więcej niż jeden spełniałby warunek true. Jeśli żaden z warunków nie jest zgodny, else blok zostanie uruchomiony. Element else jest opcjonalny, ale musi być ostatni, jeśli go uwzględnisz.
Ponieważ total jest 12 w powyższym przykładzie, dane wyjściowe to:
You win a new laptop!
Uporządkuj warunki od najbardziej szczegółowych do najmniej szczegółowych, aby przez przypadek nie pominąć oczekiwanego wyniku.
Zagnieżdżanie instrukcji if
Instrukcję if można umieścić wewnątrz bloku kodu innej if instrukcji. Jest to nazywane zagnieżdżaniem i jest przydatne, gdy jedna decyzja zależy od innej:
bool hasTicket = true;
int age = 16;
if (hasTicket)
{
if (age >= 18)
{
Console.WriteLine("Entry granted.");
}
else
{
Console.WriteLine("Minors must be accompanied by an adult.");
}
}