如何获取已知项目的下一个和上一个收集项目?
“舞台”对象是已知的,您需要为其获取前一个和后一个
我试图这样做,但是失败了(
Iterator<Stage> it = project.getProjectStages().iterator();
for (Stage stage1:
project.getProjectStages()) {
while (it.hasNext()) {
if (stage1.getStageId() == stage.getStageId()) {
nextStage = it.next();
previousStage = nextStage;
}
}
}
答案 0 :(得分:2)
很不幸,您的逻辑已被破坏。您在next
中有if
语句,因此冒着无限循环的风险。而且该迭代位于另一个迭代内,可能会多次使用同一迭代器。
我怀疑您想要类似的东西
while (iter.hasNext()) {
current = iter.next();
if (current.getStageId() == target) {
if (iter.hasNext())
following = iter.next();
break;
}
previous = current;
}