gpt4 book ai didi

java - 创建一个类来存储在 ArrayList 中创建的所有对象?

转载 作者:行者123 更新时间:2023-12-01 08:58:17 26 4
gpt4 key购买 nike

所以我创建了三个名为“Address”、“Job”和“Person”的类,其中“Person”是我的主要类。我通过以下方式测试这些:

Address person2Address = new Address(1054, "Pico St", "Los Angeles", "CA", "97556");
Address person2JobAddress = new Address(5435, "James St", "New York", "NY", "56565");
ArrayList<String> person2Phone = new ArrayList<String>();
person2Phone.add("555-555-55");
Job person2Job = new Job("Mechanic", 35000.00, person2JobAddress);
Person person2 = new Person("Rollan Tico", "New York", 'M', person2Address, person2Job, person2Phone);
System.out.println(person2.toString());

他们正确地打印了所有内容。现在,这就是我被困住的地方。我如何创建一个名为 Persons 的不同类来存储在 ArrayList 中创建的每个 Person?会有构造器吗?我知道 Arrayist 是由 ArrayList<Person> List = new ArrayList<Person>(); 创建的,但有一种感觉我错过了一些东西。

最佳答案

你可以像这样 Collection

Collection<Person> persons = new ArrayList<Person>();
persons.add(person2);

或者在某些情况下,例如 JSON 序列化,您无法将列表序列化为根元素。所以,

import java.util.*

public class Persons {

private Collection<Person> persons;

//If you want the clients to have flexibility to choose the implementation of persons collection.
//Else, hide this constructor and create the persons collection in this class only.
public Persons(Collection<Person> persons) {
this.persons = persons;
}

public void addPerson(Person person) {
persons.add(person);
}
}

关于java - 创建一个类来存储在 ArrayList 中创建的所有对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41886420/

26 4 0