switch / case Verzweigung in C#

switch / case prüft Bedingungen auf die Erfüllungen fixer vorher definierter Werte.

Im Unterschied zur if-Anweisung prüft switch fixe Werte ab.
Wir verwenden switch, wenn sich der zu prüfende Wert nicht ändert!

 

Beispiel Kaffeeautomat:

Wir schreiben ein Programm, welches einen Kaffeeautomaten simuliert. Es stehen 4 Eingabetasten zur Verfügung. Davon sind 3 belegt und die 4. ist leer.

Taste 1= Kaffee groß
Taste 2= Kaffee mittel
Taste 3= Kaffee klein
Taste 4= leer

int eingabe, preis = 0;

Console.WriteLine("Wählen Sie einen Kaffee: 1=groß, 2=mittel, 3=klein");

eingabe = Convert.ToInt16(Console.ReadLine());

switch (eingabe)
{
    case 1:
        preis = 50;
        break;

    case 2:
        preis = 40;
        break;

    case 3:
        preis = 30;
        break;

    default:  // Wenn keiner der Fälle eintritt
    Console.WriteLine("Bitte drücken Sie eine gültige Taste!");
      break;
}

if (preis != 0)
{
    Console.WriteLine("Bitte werfen Sie {0} Cent ein", preis);
}
Console.ReadLine();