Нужна помощь в создании ArrayList - PullRequest
1 голос
/ 27 февраля 2020

Я пытаюсь создать ArrayList, используя как минимум шесть объектов Person, которые будут содержать введенные пользователем имя и возраст, в результате чего информация будет распечатана в алфавитном порядке.

Список массивов с указанием лица:

import java.util.Scanner;
import java.util.List;
import java.util.ArrayList;

public class Categorization  
{
    public static Scanner input = new Scanner(System.in);
    public static void main(String[] args) 
    {
        List<Person> people = new ArrayList<Person>();

        System.out.println("Please enter a name " + name); // Can't return values
        String nameEntry = input.toString();

        System.out.println("Please enter an age " + age);
        int ageEntry = input.nextInt();

    }
  }

Я не знаком с созданием классов и чувствую, что именно здесь происходит большинство моих ошибок.

    class Person
    {
        private String name;
        private int age;

        public Person(String name, int age)
        {
            this.name = name;
            this.age = age;

        }

Пытался вернуть имя и возраст, но это не так возвращаясь в Publi c Class

        public String getName() 
        {
            return name;
        }

        public int getAge()
        {
            return age;
        }

    }

}

1 Ответ

3 голосов
/ 12 марта 2020

Вы можете попробовать это:

public class Categorization {

    public static Scanner input = new Scanner(System.in);
    public static void main(String[] args) {

        List<Person> people = new ArrayList<Person>();

        for(int i=1; i<=6; i++) {

            System.out.print("Please enter name for person " + i + " : ");
            String nameEntry = input.next();

            System.out.print("Please enter an age for person " + i + " : ");
            int ageEntry = input.nextInt();
            Person obj = new Person(nameEntry, ageEntry);
            people.add(obj);
        }

        System.out.println("List of entries you entered: ");
        for(Person obj: people) {
            System.out.println("Name: " + obj.getName() + " " + "Age: " + obj.getAge());
        }
    }

}

Вывод:

enter image description here

Вам необходимо создать объект Person, использующий ключевое слово new для хранения соответствующих значений, а затем, наконец, добавьте его в список людей.

...