If Statements in C#

C# Tutorial If-Statements Else

In nahezu jedem Programm gibt es Funktionalitäten bzw. Code der nur ausgeführt werden soll wenn eine bestimmte Voraussetzung erfüllt ist. Mit einer Wenn-Dann Abfrage (engl. if-statement) können wir genau das erreichen. Ein bestimmter Teil vom Code wird nur ausgeführt wenn eine Bedingung erfüllt wird. Schauen wir uns also im folgenden Beispiel ein C Sharp if statement an:

static void Main(string[] args)
{

  if(3 > 1)
  {
    Console.WriteLine("3 ist größer als 1"); 
  }

  Console.ReadKey(); // Hält die Konsole offen

}

If-statements befinden sich immer innerhalb von Methoden. Sie bestehen aus den folgenden Komponenten:

  1. das if Keyword
  2. eine oder mehrere Bedingungen/Konditionen (hier 3 > 1)
  3. den Code der ausgeführt werden soll (optional)

Kommen wir dazu was das Beispiel oben genau tut. Auch hier in dieser Lektion nutzen wir wieder eine standardmäßig Konsolen-Anwendung aus Visual Studio. Damit ist die static void Main unser Startpunkt des Programmes. Wenn das Programm startet wird das if-statement also aufgerufen bzw. abgefragt.

Die Bedingung die wir im if-statement stellen ist: “Ist 3 größer als 1?” – Die Antwort ist natürlich ja. In der Programmiersprache gibt es aber kein Ja oder Nein sondern nur wahr (true) oder falsch (false), die sogenannten Boolschen Werte. Da 3 größer ist als 1 ist die Bedingung also wahr. Der Code in den geschweiften Klammern des if-statements wird ausgeführt und wir bekommen einen Ausgabe in die Konsole.

Das solltest du mitnehmen: Wenn eine Bedingung wahr ist, dann wird der Code des if-statements ausgeführt.

Das else Keyword

Wir erweitern das if-statement jetzt mit einer weiteren optionalen Funktionalität. Stell dir wie aus den vorherigen Lektionen auch jetzt wieder einen Türsteher. Wenn wir die Funktion eines Türstehers programmieren müssten, dann würden wir zu einem if-statement greifen.

Nehmen wir an, dass der Türsteher derzeit nur eine Aufgabe hat. Er soll überprüfen ob der Gast mindestens 18 Jahre alt ist. Wenn der Gast volljährig ist, dann wird ihm Einlass gewährt. Ist er minderjährig soll der Türsteher in nach Hause schicken.

Das Programmieren wir jetzt:

static void Main(string[] args)
{

  int customerAge = 16;

  if(customerAge < 18)
  {
    Console.WriteLine("Gast ist zu jung und darf nicht eintreten."); 
  } else {
    Console.WriteLine("Gast ist volljährig und darf in die Disco."); 
  }

  Console.ReadKey(); // Hält die Konsole offen

}

Der Code oben tut genau das, was der Türsteher tun soll. Er überprüft ob das Alter eines Gastes (customerAge) kleiner ist als das Mindestalter (18). Wenn die Bedingung im if-statement wahr wird und der Gast zu jung ist, dann darf er nicht eintreten. In jedem anderen Fall ist der Gast aber 18 oder älter, denn man kann nur eins von beiden sein (Volljährig oder Minderjährig). Das heißt, dass wenn die Bedingung nicht wahr wird und wir ein else im if-statement benutzen, der Code aus dem else-Block ausgeführt wird.

Aufgabe: Probier es aus! Baue das Programm nach, verändere den Wert von customerAge und schau was passiert.

Das else-if Keyword

Kommen wir zu dem letzten Teil des C Sharp if-statement. Bis jetzt haben wir nur eine Bedingung benutzt. Wir können aber auch nach einer weiteren Bedingung fragen falls die erste nicht wahr geworden ist. Dafür nutzen wir das sogenannte else-if:

static void Main(string[] args)
{

  int anyNumber = 35;

  if(anyNumber < 10)
  {
    Console.WriteLine("Nummer ist kleiner als 10."); 
  } else if(anyNumber == 10) 
  {
    Console.WriteLine("Nummer ist genau 10."); 
  } else 
  {
    Console.WriteLine("Nummer ist weder kleiner als 10 noch genau 10."); 
  }

  Console.ReadKey(); // Hält die Konsole offen

}

Jetzt haben wir schon einen richtigen Baum mit Verzweigungen (engl. if-tree). Es gibt drei mögliche Optionen in diesem Statement. Entweder der Wert von anyNumber ist kleiner als 10, genau 10 oder alles andere. Der Code, bei dem die Abfrage wahr wird (spätestens beim else) wird ausgeführt.

Tipp: Du kannst so viele else-if benutzen wie du magst. Pass nur auf dass dein if-tree nicht zu groß wird. So wenig wie möglich aber so viel wie nötig.

Wir sind fast am Ende der Lektion. Wenn du noch mehr über if-statements erfahren möchtest, dann besuche diesen Link.

Nested if-statements

Gleich hast du es geschafft. Ich möchte dir nur noch eine letzte Information über if-statements geben. Es ist möglich und legitim ein if-statement innerhalb eines if-statements zu platzieren. Wir sprechen dann von einem nested if-statement:

static void Main(string[] args)
{

  bool isHuman = true;
  bool isMale = false;

  if(isHuman == true)
  {
    Console.WriteLine("... ist menschlich."); 

    if(isMale == true)
    {
     Console.WriteLine("... ist männlich."); 
    } else {
     Console.WriteLine("... ist weiblich."); 
    }

  } else {
    Console.WriteLine("... ist nicht menschlich. Geschlecht kann nicht bestimmt werden."); 
  }


  Console.ReadKey(); // Hält die Konsole offen

}

Info: == ist ein sogenannter Operator und heißt soviel wie "ist gleich"

Du hast es geschafft, if-statements sind ein elementarer Bestandteil der Programmierung. Ich hoffe dir hat diese Lektion gefallen. Vergiss nicht den Newsletter zu abonnieren um über neue Lektionen und weitere Inhalte informiert zu werden: