迭代Java对象集合时 - 如何改变当前对象?

Sof*_*ant 5 java iterator

我将使用迭代器来循环Java中的对象集合.我对使用Iterator感到有点困惑(用于每个循环使用).假设我有这样的代码:

Iterator<Organization> orgIter = orgs.iterator();
while (orgIter.hasNext()) {
    Organization orgObj = orgIter.next();
    orgObj.setChildOrgsTree(generateOrgChildTree(orgObj, new ArrayList<Organization>()));
}
Run Code Online (Sandbox Code Playgroud)

我创建一个新对象,然后更改对象内的字段.我的计划是将我形成的原始对象设置为iteroter等于我创建的此对象的列表(列表未在上面显示,但我只是发现我需要它).

但如果我不必创建一个新的Object来完成所有这些操作,那将会容易得多.有没有办法可以获得当前对象并改变它?

小智 4

尝试这个:

for(Organization org : orgs)
    org.setChildOrgsTree(generateOrgChildTree(org, new ArrayList<Organization>());
Run Code Online (Sandbox Code Playgroud)