-2

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

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

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

4

3 回答 3

1

我相信你的意思是:

person.get(1).hasBirthday();

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

于 2013-07-30T22:38:44.973 回答
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();
}
于 2013-07-30T22:40:45.307 回答
0

这是一种安全的方法:

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

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

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

于 2013-07-30T22:43:04.010 回答