"Этот вопрос касается бесплатного онлайн-курса, который я изучаю. Ниже приведены указания инструкторов, а ниже - мой ответ. Я, должно быть, решаю проблему неправильно, потому что автоматическая система оценивания отмечает, что это неверно, хотя я получил правильный результат. . Я считаю, что инструктор хотел, чтобы я заполнил массив в классе Main объектами из класса person, и я не знаю, как это сделать. Пожалуйста, помогите, если вы знаете, как это сделать, или если у вас есть лучшее представление о том, что инструктор хотел " .

Направление инструкторов

В своем основном методе создайте массив типа Person. Заполните его объектами Person следующих людей, а затем распечатайте имена каждого из этого массива. Каждый человек должен быть в отдельной строке, отформатированной, как показано ниже.

Фред, 24 года

Салли, 26 лет

Билли, 15 лет


Main.java

class Main {

    public static Person[] people;

    public static void main(String[] args) {

       Person personObject = new Person();

       personObject.Person();

    }
}

Person.java

public class Person{

    public static String[] Person(){

        String[] people = {"Fred, 24", "Sally, 26", "Billy, 15"};

        for(int i=0; i< people.length; i++){
            System.out.println(people[i]);
        }

        return people;
    }
}
0
Nicholas J Sims 19 Сен 2018 в 02:06

2 ответа

Лучший ответ

В нем говорится, что вам нужны объекты и массив. Думаю, вам нужно что-то вроде этого.

< Сильный > Person.java

public class Person {
private String name;
private int age;



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

public String getName() {
    return name;
}

public void setName(String name) {
    this.name = name;
}

public int getAge() {
    return age;
}

public void setAge(int age) {
    this.age = age;
}

@Override
public String toString() {
    return "Person{" + "name=" + name + ", age=" + age + '}';
}
}

Объявив Person p1 = new Person("Sally",26);, вы создаете объект класса Person. Вы можете использовать это столько раз, сколько захотите, и создавать разные объекты. Мы используем метод переопределения toString для вывода информации о Person. Мы также могли бы использовать p1.getName() и p1.getAge()

< Сильный > Главная

public static void main(String[] args) {



    Person p1 = new Person("Fred", 24);
    Person p2 = new Person("Sally", 26);
    Person p3 = new Person("Billy", 55);

    Person[] people = {p1,p2,p3};

    for(Person p : people){
        System.out.println(p.toString());
    }
}
2
bakero98 18 Сен 2018 в 23:47

Я думаю, что ваш профессор хочет примерно этого :)

public class Runner {


public static void main(String args[])throws Exception{  

    Persons person1 = new Persons();
    Persons person2 = new Persons();
    Persons person3 = new Persons();

    person1.setName("Fred");
    person1.setAge("24");

    person2.setName("Sally");
    person2.setAge("26");

    person3.setName("Billy");
    person3.setAge("15");

    String[] list = {person1.toString(), person2.toString(), person3.toString()};
    for (int i = 0; i < list.length; i++) {
        System.out.println(list[i]);
    }

}

}

public class Persons {
private String name;
private String age;
public String getName() {
    return name;
}
public void setName(String name) {
    this.name = name;
}
public String getAge() {
    return age;
}
public void setAge(String age) {
    this.age = age;
}

@Override
public String toString() {
    return  name + ", " + age;
}

}

-1
Java slayer 19 Сен 2018 в 01:29