Menu
Coddy logo textTech

Wächterklauseln

Teil des Abschnitts Logik & Ablauf der C#-Journey von Coddy. Lektion 19 von 66.

Guard-Klauseln sind bedingte Anweisungen am Anfang einer Methode, die Grenzfälle oder ungültige Eingaben prüfen und frühzeitig zurückkehren, wenn diese Bedingungen erfüllt sind.

Erstellen wir eine Methode ohne eine Schutzklausel:

public void ProcessOrder(Order order)
{
    if (order != null)
    {
        // Bestellung verarbeiten
        // Viele Codezeilen hier...
    }
}

Schreiben wir es nun mit einer Guard-Klausel neu:

public void ProcessOrder(Order order)
{
    if (order == null)
    {
        return; // Guard clause - früh beenden, wenn order null ist
    }
    
    // Die order verarbeiten
    // Viele Codezeilen hier...
}

Guard-Klauseln verbessern die Lesbarkeit, indem sie die Verschachtelung reduzieren und Ausnahmefälle am Anfang einer Methode behandeln.

challenge icon

Aufgabe

Einfach

Erstelle eine Methode namens DivideNumbers, die zwei Ganzzahlen, numerator und denominator, entgegennimmt.

  1. Füge eine Guard Clause hinzu, um zu prüfen, ob der Nenner null ist.
  2. Wenn der Nenner null ist, gib „Cannot divide by zero“ aus und gib 0 zurück.
  3. Andernfalls teile den Zähler durch den Nenner und gib das Ergebnis zurück.

Probier es selbst

using System;

public class Program
{
    public static int DivideNumbers(int numerator, int denominator)
    {
        // Schreibe deinen Code hier
    }
    
    public static void Main()
    {
        // Lies Eingaben von der Konsole
        int numerator = Convert.ToInt32(Console.ReadLine());
        int denominator = Convert.ToInt32(Console.ReadLine());
        
        // Rufe die DivideNumbers-Methode auf
        int result = DivideNumbers(numerator, denominator);
        
        // Gib das Ergebnis aus
        Console.WriteLine(result);
    }
}
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Logik & Ablauf

Übe selbstständig: Online-C#-Compiler