Bedingte Logik in C# meistern: If, If-Else, If-ElseIf und verschachtelte If-Anweisungen
Bedingte Logik in C# meistern: If, If-Else, If-ElseIf und verschachtelte If-Anweisungen
In diesem Artikel lernen Sie, wie Sie if, if...else, if...else if Anweisungen in C# verwenden, um den Ablauf der Programmausführung zu steuern.
Das Testen von Bedingungen ist ein Kernbestandteil jeder Programmiersprache. In C# ermöglichen bedingte Anweisungen die Auswertung boolescher Ausdrücke und die Entscheidung, welche Codeblöcke ausgeführt werden sollen. Diese Bedingungen werden oft durch Benutzereingaben, Systemzustand, Zeit oder andere Laufzeitfaktoren gesteuert.
C# if (If-Then) Anweisung
Die einfachste Form bedingter Logik in C# ist die if Anweisung, die einen Codeblock ausführt, wenn ihr boolescher Ausdruck true ergibt. Die Syntax ist einfach:
if (booleanExpression) {
// Code, der ausgeführt wird, wenn booleanExpression true ist
}
- Der
booleanExpressionmuss entweder true oder false zurückgeben. - Gibt er true zurück, werden die Anweisungen in den Klammern ausgeführt.
- Gibt er false zurück, werden diese Anweisungen übersprungen.
Beispiel:
if (number < 5) {
number += 5;
}
Hier wird number += 5; nur ausgeführt, wenn number kleiner als 5 ist.
Funktionsweise einer if Anweisung

Beispiel 1: Grundlegende if Anweisung
using System;
namespace Conditional {
class IfStatement {
public static void Main(string[] args) {
int number = 2;
if (number < 5) {
Console.WriteLine($"{number} is less than 5");
}
Console.WriteLine("This statement is always executed.");
}
}
}
Ausgabe:
2 is less than 5 This statement is always executed.
Ändert man number auf 10, wird die Ausgabe:
This statement is always executed.
Da number < 5 zu false ausgewertet wird, wird der if Block übersprungen.
C# if...else (If-Then-Else) Anweisung
Wenn Sie beide Ergebnisse eines booleschen Tests behandeln müssen, fügen Sie einen else Block hinzu:
if (booleanExpression) {
// ausgeführt wenn true
} else {
// ausgeführt wenn false
}
Beispiel:
if (number < 5) {
number += 5;
} else {
number -= 5;
}
Der erste Zweig läuft, wenn number kleiner als 5 ist; andernfalls läuft der zweite Zweig.
Funktionsweise einer if...else Anweisung

Beispiel 2: if...else verwenden
using System;
namespace Conditional {
class IfElseStatement {
public static void Main(string[] args) {
int number = 12;
if (number < 5) {
Console.WriteLine($"{number} is less than 5");
} else {
Console.WriteLine($"{number} is greater than or equal to 5");
}
Console.WriteLine("This statement is always executed.");
}
}
}
Ausgabe bei number = 12:
12 is greater than or equal to 5 This statement is always executed.
Mit number = 2 wird die Ausgabe:
2 is less than 5 This statement is always executed.
Für eine prägnante Alternative kann der ternäre Operator einfache if...else Konstrukte ersetzen.
C# if...else if (If-Then-Else If) Anweisung
Wenn mehrere Bedingungen ausgewertet werden müssen, ketten Sie else if Klauseln nach dem initialen if:
if (condition1) {
// Code für condition1
} else if (condition2) {
// Code für condition2
} else if (condition3) {
// Code für condition3
} else {
// Code wenn alle Bedingungen false sind
}
Die Kette wird von oben nach unten ausgewertet; die Ausführung stoppt bei der ersten true Bedingung. Wenn keine zutrifft, läuft der else Block.
Alternativ kann eine switch Anweisung diskrete Werte sauberer behandeln.
Beispiel 3: if...else if verwenden
using System;
namespace Conditional {
class IfElseIfStatement {
public static void Main(string[] args) {
int number = 12;
if (number < 5) {
Console.WriteLine($"{number} is less than 5");
} else if (number > 5) {
Console.WriteLine($"{number} is greater than 5");
} else {
Console.WriteLine($"{number} is equal to 5");
}
}
}
}
Ausgabe für number = 12:
12 is greater than 5
Ändert man number auf 4 oder 5, passt sich die Ausgabe entsprechend an.
Verschachtelte if...else Anweisungen
Eine verschachtelte if...else platziert einen bedingten Block in einen anderen, was mehrstufige Entscheidungslogik ermöglicht. Das allgemeine Muster ist:
if (outerCondition) {
if (innerCondition1) {
// Code wenn beide true sind
} else {
// Code wenn outer true, inner false
}
} else {
if (innerCondition2) {
// Code wenn outer false, inner2 true
} else {
// Code wenn beide false
}
}
Verschachtelte Bedingungen eignen sich für schrittweise Prüfungen, wie die Validierung einer Reihe von Benutzereingaben oder das Berechnen des Maximums mehrerer Werte.
Beispiel 4: Größte von drei Zahlen finden
using System;
namespace Conditional {
class Nested {
public static void Main(string[] args) {
int first = 7, second = -23, third = 13;
if (first > second) {
if (first > third) {
Console.WriteLine($"{first} is the largest");
} else {
Console.WriteLine($"{third} is the largest");
}
} else {
if (second > third) {
Console.WriteLine($"{second} is the largest");
} else {
Console.WriteLine($"{third} is the largest");
}
}
}
}
}
Programmausgabe:
13 is the largest
Passen Sie die Eingabewerte an, um zu sehen, wie sich die Logik anpasst.
C Sprache
- Piepser (Pager) Technologie: Von frühen Innovationen zur Zweiweg-Kommunikation
- C# Switch Statement meistern: Syntax, Beispiele & Best Practices
- C# Break Statement: Wie und wann man es einsetzt
- C# Continue Statement meistern: Schleifeniterationen effektiv überspringen
- C# Geschachtelte Klassen verstehen: Definition, Verwendung und Vererbung
- Python-Anweisungen, Einrückung & Kommentare: Klare Anleitung
- Java verschachtelte und innere Klassen meistern: Typen, Beispiele und Best Practices
- C-Grundsyntax meistern: Tokens, Struktur und Semikolons
- C-Konstanten und Literale: Typen, Verwendung & Best Practices
- C# Konstanten & Literale: Typen, Regeln und Best Practices