If-Else-Keten
We kunnen extra voorwaarden toevoegen met het sleutelwoord else if. De extra voorwaarden worden geëvalueerd als de vorige voorwaarden niet zijn voldaan.
if (expression)
{
// code if first condition is met
}
else if (expression)
{
// code if second condition is met
} else
{
// code if no condition is met
}
Beschouwing van een voorbeeld met een if else-keten:
main.cs
1234567891011121314151617181920212223242526using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int value_1 = 9; int value_2 = 7; if(value_1 < value_2) { Console.WriteLine("Value 1 is smaller than Value 2"); } else if(value_1 > value_2) { Console.WriteLine("Value 1 is bigger than Value 2"); } else if(value_1 == value_2) { Console.WriteLine("Value 1 is equal to Value 2"); } } } }
In het bovenstaande programma hebben we voorwaarden gekoppeld met if-else if. Dit wordt conditionele ketening genoemd. De eerste voorwaarde value_1 < value_2 wordt geëvalueerd. Omdat deze false is, gaat het programma door naar de volgende voorwaarde value_1 > value_2, die true is, waardoor het bijbehorende codeblok wordt uitgevoerd en de keten niet verder wordt uitgevoerd.
Het belangrijkste kenmerk van conditionele ketening is dat de keten stopt zodra aan een voorwaarde is voldaan.
Beschouw de volgende code:
main.cs
12345678910111213141516171819202122232425using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int value = 10; if(value > 5) { Console.WriteLine("Value is bigger than 5"); } else if(value > 7) { Console.WriteLine("Value is bigger than 7"); } else if(value > 9) { Console.WriteLine("Value is bigger than 9"); } } } }
Hoewel alle drie de voorwaarden true zijn, stopt de uitvoering bij de eerste voorwaarde omdat het een keten is.
Laten we het nu proberen te schrijven met eenvoudige if-sleutelwoorden zonder te ketenen:
main.cs
123456789101112131415161718192021222324252627using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int value = 10; if(value > 5) { Console.WriteLine("Value is bigger than 5"); } if(value > 7) { Console.WriteLine("Value is bigger than 7"); } if(value > 9) { Console.WriteLine("Value is bigger than 9"); } } } }
In het bovenstaande geval wordt elke voorwaarde afzonderlijk geëvalueerd en niet als onderdeel van een keten behandeld, waardoor alle drie de instructies worden uitgevoerd.
We kunnen ook het sleutelwoord else aan het einde van de if-else-keten toevoegen, dat wordt uitgevoerd als geen enkele voorwaarde overeenkomt:
main.cs
1234567891011121314151617181920212223242526using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int value_1 = 9; int value_2 = 7; if(value_1 < value_2) { Console.WriteLine("Value 1 is smaller than Value 2"); } else if(value_1 > value_2) { Console.WriteLine("Value 1 is bigger than Value 2"); } else { Console.WriteLine("Value 1 is equal to Value 2"); } } } }
Bedankt voor je feedback!
Vraag AI
Vraag AI
Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.
Can you explain the difference between using chained if-else and separate if statements?
Can you provide more examples of conditional chaining?
What happens if none of the conditions in the if-else chain are true?
Awesome!
Completion rate improved to 1.59
If-Else-Keten
Veeg om het menu te tonen
We kunnen extra voorwaarden toevoegen met het sleutelwoord else if. De extra voorwaarden worden geëvalueerd als de vorige voorwaarden niet zijn voldaan.
if (expression)
{
// code if first condition is met
}
else if (expression)
{
// code if second condition is met
} else
{
// code if no condition is met
}
Beschouwing van een voorbeeld met een if else-keten:
main.cs
1234567891011121314151617181920212223242526using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int value_1 = 9; int value_2 = 7; if(value_1 < value_2) { Console.WriteLine("Value 1 is smaller than Value 2"); } else if(value_1 > value_2) { Console.WriteLine("Value 1 is bigger than Value 2"); } else if(value_1 == value_2) { Console.WriteLine("Value 1 is equal to Value 2"); } } } }
In het bovenstaande programma hebben we voorwaarden gekoppeld met if-else if. Dit wordt conditionele ketening genoemd. De eerste voorwaarde value_1 < value_2 wordt geëvalueerd. Omdat deze false is, gaat het programma door naar de volgende voorwaarde value_1 > value_2, die true is, waardoor het bijbehorende codeblok wordt uitgevoerd en de keten niet verder wordt uitgevoerd.
Het belangrijkste kenmerk van conditionele ketening is dat de keten stopt zodra aan een voorwaarde is voldaan.
Beschouw de volgende code:
main.cs
12345678910111213141516171819202122232425using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int value = 10; if(value > 5) { Console.WriteLine("Value is bigger than 5"); } else if(value > 7) { Console.WriteLine("Value is bigger than 7"); } else if(value > 9) { Console.WriteLine("Value is bigger than 9"); } } } }
Hoewel alle drie de voorwaarden true zijn, stopt de uitvoering bij de eerste voorwaarde omdat het een keten is.
Laten we het nu proberen te schrijven met eenvoudige if-sleutelwoorden zonder te ketenen:
main.cs
123456789101112131415161718192021222324252627using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int value = 10; if(value > 5) { Console.WriteLine("Value is bigger than 5"); } if(value > 7) { Console.WriteLine("Value is bigger than 7"); } if(value > 9) { Console.WriteLine("Value is bigger than 9"); } } } }
In het bovenstaande geval wordt elke voorwaarde afzonderlijk geëvalueerd en niet als onderdeel van een keten behandeld, waardoor alle drie de instructies worden uitgevoerd.
We kunnen ook het sleutelwoord else aan het einde van de if-else-keten toevoegen, dat wordt uitgevoerd als geen enkele voorwaarde overeenkomt:
main.cs
1234567891011121314151617181920212223242526using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int value_1 = 9; int value_2 = 7; if(value_1 < value_2) { Console.WriteLine("Value 1 is smaller than Value 2"); } else if(value_1 > value_2) { Console.WriteLine("Value 1 is bigger than Value 2"); } else { Console.WriteLine("Value 1 is equal to Value 2"); } } } }
Bedankt voor je feedback!