我对代码有一点问题,如下所示.将iterator().hasNext()永远不会变成假的,因为next()函数总是返回相同的元素.它以无限循环结束.
我想在集合中的每个元素中设置属性UserLock(从中返回 GetElements()).如果元素的类型是"Package",我将使用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();
}
}
Run Code Online (Sandbox Code Playgroud)