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

Для школьного проекта мой профессор хочет, чтобы мы создали меню, используя разделение строк. Она не раскрыла, как это сделать, поэтому я немного растерялся.

Вот инструкции по назначению:

"Для проекта 4 я хочу, чтобы вы взяли проект 3 и использовали в нем меню на основе командной строки. Это означает, что вместо интерактивного меню вы будете использовать версию командной строки, т. Е.

Купить 1 история бросить курить

Ваша программа должна показать, что вы можете справиться с реализацией двух типов интерфейса к вашей программе. Один использует интерактивное меню, которое спрашивает их, что они хотели бы сделать, а другой использует меню командной строки, где вы вводите команду в виде строки, а ваша программа использует разделение строк. "

Я не могу найти какой-либо другой ресурс, который показывает, как сделать меню, основанное на вводе строки пользователем. Понятия не имею, с чего начать, буду признателен за любую помощь. Спасибо!

System.out.println("Welcome! Enter a command. \n"
                    + "Enter 1) Buy Bitcoin \n"
                    + "Enter 2) Sell Bitcoin  \n"
                    + "Enter 3) Print Balance \n"
                    + "Enter 4) Print History \n"
                    + "ENTER 5) print USD\n"
                    + "Enter 6) Exit Program\n");
            choice = myscanner.nextInt();

1 Ответ

0 голосов
/ 17 мая 2019

Как уже указывалось в комментариях Wisthler, вы должны прочитать всю строку и разбить строку. Следующий пример кода покажет вам, как решить эту задачу:

    // Example command
    String command = "print balance";

    String[] commandSplitted = command.split(" ");

    // You have to add a length check for the array
    if (commandSplitted[0].equals("print")) {
        // command part 1 is print
        if (commandSplitted[1].equals("history")) {
            // command part 2 is history
            // command is print history
            // ...
            System.out.println("enter 4");
        } else if (commandSplitted[1].equals("balance")) {
            // command part 2 is balance
            // command is print balance
            // ...
            System.out.println("enter 3");
        }//... depending on the amount of commands you might want to use a switch case on the split parts
    } // else if ...

Следующим шагом будет заполнение этого кода и добавление читателя (вам придется его изменить) из предыдущего задания.

Обратите внимание, что это только подход, и он не полностью функционален.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...