【发布时间】:2014-12-11 01:58:13
【问题描述】:
所以这是我需要帮助转换的循环:
public Product findProduct(int id) {
Product found = null;
for(Product m : stock){
if(m.getID() == id){
found = m;
}
}
return found;
}
它应该搜索 stock 集合(我刚开始学习,所以我不太了解这些术语),以查找具有与我们在方法中输入的 int 值相同的 ID 字段的 Product 对象。 我想到了一个while循环,我想我有点理解它。我没有得到的是我应该如何获得 m.getID() 的值,即 Product 类中的 ID 字段。 该类不允许有 import.java.util.Iterator
【问题讨论】:
-
使用 iterator.next() 时需要对元素进行强制转换。例如:产品 m = (Product) productIterator.next()
-
我认为没有理由因为这个原因而进行一段时间的循环。老实说,我只是在
found = m;之后添加一个break;,以避免在您已经找到所需内容之后进行不必要的迭代。 -
.. 或者在找到匹配项时只使用
return m,然后在循环完成后使用return null而不是return found。
标签: java loops foreach while-loop