Java 更新HashSet中的某些元素
我有一个Java 更新HashSet中的某些元素,java,hibernate,Java,Hibernate,我有一个集合的MyObject以Hibernate方式从数据库中检索 Set<MyObject> dbObjects = dbService.getMyObjects(); 我觉得上面的代码效率很低。是否有更好的解决方案来更新集合 (请不要建议我创建一个新的集合来保存更新的元素(出于hibernate原因),我只想更新现有的dbObjects集合)对不起,我不知道hibernate。所以,我的答案可能不正确 Collection<MyObject> replaceObj
集合
的MyObject
以Hibernate方式从数据库中检索
Set<MyObject> dbObjects = dbService.getMyObjects();
我觉得上面的代码效率很低。是否有更好的解决方案来更新集合
(请不要建议我创建一个新的集合来保存更新的元素(出于hibernate原因),我只想更新现有的
dbObjects
集合)对不起,我不知道hibernate。所以,我的答案可能不正确
Collection<MyObject> replaceObjects = new ArrayList<MyObject>();
for(MyObject newObj : newCollection){
String newObjName = newObj.getName();
Iterator itr = dbObjects.iterator();
while(itr.hasNext()) {
MyObject dbObj = itr.next();
if(dbObj.getName.equals(newObjName)){
replaceObjects.add(dbObj);
itr.remove();
}
}
dbObjects.addAll(repalceObjects);
}
Collection replaceObjects=new ArrayList();
对于(MyObject newObj:newCollection){
字符串newObjName=newObj.getName();
迭代器itr=dbObjects.Iterator();
while(itr.hasNext()){
MyObject dbObj=itr.next();
if(dbObj.getName.equals(newObjName)){
replaceObjects.add(dbObj);
itr.remove();
}
}
addAll(repalceObjects);
}
Collection<MyObject> replaceObjects = new ArrayList<MyObject>();
for(MyObject newObj : newCollection){
String newObjName = newObj.getName();
Iterator itr = dbObjects.iterator();
while(itr.hasNext()) {
MyObject dbObj = itr.next();
if(dbObj.getName.equals(newObjName)){
replaceObjects.add(dbObj);
itr.remove();
}
}
dbObjects.addAll(repalceObjects);
}