【发布时间】:2015-12-05 00:15:05
【问题描述】:
我的代码有一点问题,如下所示。 iterator().hasNext() 永远不会变成 false,因为 next() 函数总是返回相同的元素。它以无限循环结束。
我想在集合中的每个元素中设置属性 UserLock(从GetElements() 返回)。
如果元素的类型是“包”,我会通过lockAllElements函数的递归调用来锁定包下的所有元素。
private void lockAllElements(String internalGUID) {
Element tempElem = null;
while((repo.GetPackageByGuid(internalGUID).GetElements().iterator().hasNext()) == true) {
tempElem = repo.GetPackageByGuid(internalGUID).GetElements().iterator().next();
if(tempElem.GetType().equals("Package")) {
this.lockAllElements(tempElem.GetElementGUID());
}
tempElem.ApplyUserLock();
}
}
【问题讨论】:
标签: java while-loop iterator