C # switch-Anweisung
Testfall eineswitch - Anweisung ermöglicht eine Variable gleich dem mehrfachen Wert.Jeder Wert ist ein Fall genannt, und die Variable wird jedesSchaltergehäuse getestet werden überprüft werden.
Grammatik
Switch - Anweisung in C # Syntax:
switch (Ausdruck) { Fall konstant Ausdruck: statement (s); brechen; Fall konstant Ausdruck: statement (s); brechen; / * Sie können eine beliebige Anzahl von case-Anweisungen haben * / Standard: / * optional * / statement (s); brechen; }
switch - Anweisung müssen diese Regeln befolgen:
- switch - Anweisung Ausdruckmuss eine ganze Zahl oder Aufzählungstyp oder eine Klasse - Typ sein, die Klasse je eine Umwandlungsfunktion hat es auf eine ganze Zahl oder Aufzählungstyp zu konvertieren.
- In einem Schalter können Sie eine beliebige Anzahl von Case-Anweisungen haben. Jeder Fall wird gefolgt von einem Wert mit einem Doppelpunkt zu vergleichen.
- Beikonstanter Ausdruck muss den gleichen Datentyp haben und Variablen wechseln und muss eine Konstante sein.
- Wenn die Variable getestet auf den Fall konstanter Zeit gleich ist, wird von einem Fall Anweisung folgt ausgeführt werden, bis er einebreak - Anweisung trifft.
- Wenn einebreak - Anweisung angetroffen wird, endet Schalter der Steuerfluss in die nächste Zeile springt nach der switch - Anweisung.
- Nicht muss jeder FallBruch einzubeziehen.Wenn der Fall Anweisung leer ist, kann es nicht einePause enthalten, werden wir den Fluss des nachfolgenden Fall zu kontrollieren, bis er eine Pause bis begegnet.
- C # wird nicht weiter von einem Vermittlungsabschnitt zum nächsten Schaltabschnitt erlaubt. Wenn der Fall Auszugsverarbeitung Aussagen hat, muss es zusätzlichePause oder Sprunganweisung enthalten.
- Eineswitch - Anweisung ein optionales Standardfallhabenkann,wird es am Ende des Schalters. Standardfall kann in allen oben genannten Fall verwendet werden, ist nicht der Fall, wenn eine Aufgabe ausführt. DerBruch in der Standard - case - Anweisung ist nicht erforderlich.
- C # unterstützt keine explizite Etikett von einem Fall auf einen anderen Fall in der gesamten Etikett. Wenn Sie Unterstützung von einem C # expliziten Fall Etikett durch auf einen anderen Fall Etiketten möchten, können goto einen switch-case oder goto Standard zu verwenden.
Flussdiagramm
Beispiele
using System; Namespace Entscheidungs { Klasse-Programm { static void Main (string [] args) { / * Lokale Variablen-Definitionen * / char Klasse = 'B'; Schalter (Grad) { Fall 'A': Console.WriteLine ( "sehr gut!"); brechen; Fall 'B': Fall 'C': Console.WriteLine ( "well done"); brechen; Fall 'D': Console.WriteLine ( "Sie bestanden"); brechen; Fall 'F': Console.WriteLine ( "best versuchen Sie es erneut"); brechen; Standard: Console.WriteLine ( "ungültige Ergebnisse"); brechen; } Console.WriteLine ( "Ihr Erfolg ist {0}", Grad); Console.ReadLine (); } } }
Wenn der obige Code kompiliert und ausgeführt wird, erzeugt es die folgenden Ergebnisse:
Ihr Ergebnis ist gut B