Можете ли вы добавить проверку на коммутатор? - PullRequest
0 голосов
/ 14 января 2019

Я знаю, что это может быть простой вопрос, но как мне добавить проверку к этому оператору switch. Я хочу, чтобы, если пользователь вводит номер, отличный от 1,2 или 3, будет отображаться сообщение об ошибке.

        Console.WriteLine("-=-=-=-=-=-=-=-=-=-=-=-=-=-");
        Console.WriteLine("    1. Create Account      ");
        Console.WriteLine("    2.     Login           ");
        Console.WriteLine("-=-=-=-=-=-=-=-=-=-=-=-=-=-");

        string userChoice = Console.ReadLine();



        switch (userChoice)
        {
            case "1":
                Console.Clear();
                cl_class.CreateAccount();
                DisplayMenu();
                Console.ReadKey();
                break;
            case "2":
                Console.Clear();
                Login();
                DisplayMenu();
                Console.ReadKey();
                break;

        }

1 Ответ

0 голосов
/ 14 января 2019

Вам нужно ключевое слово default.
Используйте его после вашего последнего case (технически заказ не имеет значения , согласно документации по ссылке ниже, но вам будет трудно убедить меня в не поставить его Последнее - это просто обычная практика).

switch (userChoice)
{
    case "1":
        Console.Clear();
        cl_class.CreateAccount();
        DisplayMenu();
        Console.ReadKey();
        break;
    case "2":
        Console.Clear();
        Login();
        DisplayMenu();
        Console.ReadKey();
        break;
    default:
        //Display error stuff
}  

Я пропустил case на 3, поскольку вы не включили его в свой пример. Если вы хотите, чтобы по умолчанию не было «3», очевидно, просто добавьте это как новый case выше значения по умолчанию.

Подробнее здесь: https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/switch#the-default-case

...