как хранить больше чем строковую переменную ввода в одной строке из цикла (JAVA) - PullRequest
0 голосов
/ 06 марта 2019

Я полу новичок в Java

Это мой код

        while (true) {
        System.out.println("Choose the number");
        System.out.println("1");
        System.out.println("2");
        System.out.println("3");
        System.out.println("4 for Display summary and Exit");

        int cho = input.nextInt();

        System.out.println("Registration");

        System.out.println("Enter your full name (first and lastname)");
        String name = input.next();

        System.out.println("Enter your National ID");
        int id = input.nextInt();

        System.out.println("Enter your phone number");
        int phone = input.nextInt();

Я сделал, если заявление для всех вариантов 1,2,3,4

А это номер 4, если заявление

            else if (cho == 4) {
            System.out.println("Summary");
        }

Я хочу в этом цикле, если пользовательский вариант 4 в главном меню выводит сводку всех зарегистрированных пользователей (имя, телефон, идентификатор), которые выбирают 1,2,3, даже если пользователь сделал несколько регистраций, а затем выход из программы.

1 Ответ

1 голос
/ 06 марта 2019

Вы должны использовать класс, такой как Person, чтобы хранить каждого человека в каждом цикле цикла, например,

class Person{
    String name;
    int id, phone;
    // Constructor with the 3 attributes
    // toString() method implemented
}

А при использовании попросить 4 распечатать весь список

List<Person> peoples = new ArrayList<>()
while (true) {
    System.out.println("Choose the number\n1\n2\n3\n4 for Display summary and Exit");
    int cho = input.nextInt();

    System.out.println("Registration");

    System.out.println("Enter your full name (first and lastname)");
    String name = input.next();

    System.out.println("Enter your National ID");
    int id = input.nextInt();

    System.out.println("Enter your phone number");
    int phone = input.nextInt();

    Person p = new Person(name, id, phone);
    peoples.add(p)
    //...
    if( cho == 4){
        peoples.forEach(System.out::println);
        break;
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...