Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer If-Else-Keten | Controle Structuren
C# Basisprincipes

bookIf-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

main.cs

copy
1234567891011121314151617181920212223242526
using 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

main.cs

copy
12345678910111213141516171819202122232425
using 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

main.cs

copy
123456789101112131415161718192021222324252627
using 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

main.cs

copy
1234567891011121314151617181920212223242526
using 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"); } } } }
question mark

Welke regels worden opgenomen in de uitvoer van het volgende programma?

Select the correct answer

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 3. Hoofdstuk 9

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

Suggested prompts:

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

bookIf-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

main.cs

copy
1234567891011121314151617181920212223242526
using 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

main.cs

copy
12345678910111213141516171819202122232425
using 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

main.cs

copy
123456789101112131415161718192021222324252627
using 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

main.cs

copy
1234567891011121314151617181920212223242526
using 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"); } } } }
question mark

Welke regels worden opgenomen in de uitvoer van het volgende programma?

Select the correct answer

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 3. Hoofdstuk 9
some-alt