Wie kann ich die Schleife eine case-Anweisung switch wenn ein Ungültiger Wert gewählt wird, ich.e der Standard

Hier ist ein Beispiel, wo ein Menü von Werten zur Verfügung. ich möchte es Schleife zurück an den start, wenn keine Optionen gewählt werden.

static void Main(string[] args)
{
    Console.WriteLine("1 : Option 1");
    Console.WriteLine("2 : Option 2");
    Console.WriteLine("3 : Option 3");
    Console.WriteLine("4 : Option 4");
    Console.WriteLine("5 : Option 5");
    Console.Write("Please enter your option choice: ");
    string choice = Console.ReadLine();

    int intChoice = int.Parse(choice);
    switch (intChoice)
    {
        case 1:
            Console.WriteLine("you chose 1");
            break;
        case 2:
            Console.WriteLine("you chose 2");
            break;
        case 3:
            Console.WriteLine("you chose 3");
            break;
        case 4:
            Console.WriteLine("you chose 4");
            break;
        case 5:
            Console.WriteLine("you chose 5");
            break;
    }
}

Ich habe versucht, es zu tun durch die Verwendung von Klassen und Methode, aber ich habe gerade wirklich verwirrt.

vielen Dank im Voraus für jede Hilfe.

  • Das ist nicht, wie switch-Anweisungen arbeiten. Sie müssen wickeln Sie das ganze um ein while oder for Schleife
  • Als beiseite (und, wie gezeigt, in Heathers Beispiel unten), möchten Sie vielleicht zu prüfen, mit int.TryParse, um zu überprüfen, dass die 'Wahl' kann ja konvertiert werden, ein int. Sie können weiterhin mit int.Parsen, aber würde wickeln Sie es in ein try/catch-block - jetzt eine ungültige Wahl könnte beenden Sie die app mit einer nicht behandelten Ausnahme.
InformationsquelleAutor Flimbo | 2012-10-23
Schreibe einen Kommentar