我试图使用迭代器在数组列表中查找特定对象,然后将字段添加到特定对象。我已将字段标题和格式添加到我的对象中,但我需要将名称和日期添加到特定对象中。我的带有 getter 和 setter 的类称为 MediaItem。我目前的方式是将名称和日期字段添加到每个对象中。任何帮助理解如何使我的代码仅添加到特定对象的帮助将不胜感激。
public class Library {
static ArrayList<MediaItem> items = new ArrayList<MediaItem>();
static void addNewItem(String title, String format) {
MediaItem b = new MediaItem();
b.setTitle(title);
b.setFormat(format);
items.add(b);
}
static void markItemOnLoan(String title, String name, String date) {
Iterator<MediaItem> it = items.iterator();
for (MediaItem mi : items){
it.next();
it.equals(title);
mi.setLoanedTo(name);
mi.setDateLoaned(date);
}
}
}
最佳答案
如果您使用这种 for 循环,则不需要迭代器。 另外,it.equals应该是一个“if”语句,并且它应该与特定字段进行比较。
static void markItemOnLoan(String title, String name, String date) {
for (MediaItem mi : items){
if(mi.getTitle().equals(title)) {
mi.setLoanedTo(name);
mi.setDateLoaned(date);
}
}
}
关于java - 如何使用迭代器在属于数组列表的对象中查找特定标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22260564/