如何從(類)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