如何从类型(class)Person的arrayList中获取第二个对象并将方法应用于该特定对象?
ArrayList<Person> person = new ArrayList<Person>();
对于前。我在Person类中有一个名为hasBirthday()的方法,它向对象人员添加一年,但它仅适用于创建的第二个Object。这是为了显示生日快乐的消息,并在从控制台创建第二个对象后添加一年。毕竟我们喜欢生日;)
答案 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
,如果年龄是您允许分配的。描述性方法名称很有用。