Java 我最好如何用原始对象填充此数组?

Java 我最好如何用原始对象填充此数组?,java,object,arraylist,Java,Object,Arraylist,我有一个数组: ArrayList<Person> people = new ArrayList(); 我的问题是,我可以用相同变量名的对象填充数组吗?如果没有,我怎么还能使用人对象?对象与其变量名无关!是的,当然可以 是的,您对所描述的内容不会有任何问题 你会得到这样的结果: Person person = new Person(); person.firstName = firstNameTextField.getText(); person.lastName = lastNa

我有一个数组:

ArrayList<Person> people = new ArrayList();

我的问题是,我可以用相同变量名的对象填充数组吗?如果没有,我怎么还能使用
对象?

对象与其变量名无关!是的,当然可以

是的,您对所描述的内容不会有任何问题

你会得到这样的结果:

Person person = new Person();
person.firstName = firstNameTextField.getText();
person.lastName = lastNameTextField.getText();
people.add(person);

person = new Person(); // <-- reinitializing person.
person.firstName = firstNameTextField.getText();
person.lastName = lastNameTextField.getText();
people.add(person);
ArrayList<Person> people = new ArrayList();
// add a bunch of Person objects like we did above

for(int i = 0; i < people.size(); i++) {
    System.out.println("Found person: " + people.get(i).firstName);
}
Person-Person=新的Person();
person.firstName=firstNameTextField.getText();
person.lastName=lastnamextfield.getText();
人。添加(人);

person=新的person();// 如果你懒惰,你也可以在人身上使用构造器

class Person {
 public Person(String firstname, String lastname) { 
 this.firstname=firstname;      
 this.lastname=lastname; 
}
}
然后

people.add(new People("tom", "lastnameoftom"));
people.add(new People("Susi", "SusisLastname"));
等等

但是要回答你的问题。。每次在变量上使用新变量时,它都会被重新初始化。编译器将翻译以下内容:

People people = new People();
people.setSetter(data);

people = new People();
people.setSetter(otherdata);
致(例)


对象与引用它的变量无关。请先尝试一下,如果确实有问题,请提问。如果您循环它,您将为
Person
分配一个新的
Person
对象,但这并不意味着前一个对象已消失:您只是不再从
Person
引用它。因此,我将能够使用数组的索引引用该对象?@Mattbettinson是的,您将能够。实现
Person.clone()
并使用它?
people[i]。firstName
应该是
people.get(i)。firstName
People people = new People();
people.setSetter(data);

people = new People();
people.setSetter(otherdata);
People a = new People();
a.setSetter(data);

People b = new People();
b.setSetter(otherdata);