ArrayList中的对象更新

时间:2013-07-30 22:35:35

标签: java

如何从类型(class)Person的arrayList中获取第二个对象并将方法应用于该特定对象?

ArrayList<Person> person = new ArrayList<Person>();

对于前。我在Person类中有一个名为hasBirthday()的方法,它向对象人员添加一年,但它仅适用于创建的第二个Object。这是为了显示生日快乐的消息,并在从控制台创建第二个对象后添加一年。毕竟我们喜欢生日;)

3 个答案:

答案 0 :(得分:1)

我相信你的意思是:

person.get(1).hasBirthday();

将在列表中的第二个对象上调用hasBirthday方法(如果存在)。

答案 1 :(得分:0)

ArrayList<Person> person = new ArrayList<Person>();
person.add(new Person(someParam1));
person.add(new Person(someParam2));
person.add(new Person(someParam3));

if (person.size() >= 2) {
    Person secondPerson = person.get(1);
    secondPerson.hasBirthday();
}

答案 2 :(得分:0)

这是一种安全的方法:

if(person.size() >1 && person.get(1) != null){
    person.get(1).hasBirthday();
}

这会检查List的长度是否正确,并且该索引处的值不为空。

我会将您的hasBirthday方法重命名为increaseAge或指定年龄的设定者,例如setAge,如果年龄是您允许分配的。描述性方法名称很有用。