如何从(类)Person类型的arrayList中获取第二个对象并将方法应用于该特定对象?ArrayList内的对象更新
ArrayList<Person> person = new ArrayList<Person>();
例如,我在Person类中有一个名为hasBirthday()的方法,它将一年添加到对象人,但它仅适用于创建的第二个对象。这是为了显示生日快乐的消息,并且一旦从控制台创建第二个对象就添加一年。所有我们喜欢生日后;)
如何从(类)Person类型的arrayList中获取第二个对象并将方法应用于该特定对象?ArrayList内的对象更新
ArrayList<Person> person = new ArrayList<Person>();
例如,我在Person类中有一个名为hasBirthday()的方法,它将一年添加到对象人,但它仅适用于创建的第二个对象。这是为了显示生日快乐的消息,并且一旦从控制台创建第二个对象就添加一年。所有我们喜欢生日后;)
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();
}
事情是,用户将从控制台添加信息,数组将自行更新信息。最后一部分是我一直在寻找的。感谢你的回答! – Sun
这里做一个安全的方式:
if(person.size() >1 && person.get(1) != null){
person.get(1).hasBirthday();
}
此检查List
是适当的长度,并且该索引的值不为空。
我想你hasBirthday
方法重命名为类似increaseAge
或二传手分配时代,像setAge
如果年龄是你允许进行分配。描述性方法名称很有用。
是的,我完全同意一些改变。我正在密切遗漏.has生日的部分。感谢你的回答! – Sun
你能发布你的代码吗? –
你的意思是“它仅适用于第二个创建的对象”? (我质疑设计'hasBirthday'方法的智慧,它也会改变状态......听起来像它只是*检查*某事并返回答案。) –
如果数组中有第二个对象,方法hasBirthday将被调用并且将该对象更新一年(年龄)并提供消息以让用户知道这些变化。是或多或少地给出第二个对象的程序的答案,并且通知用户这些变化。 – Sun