1.出现 java.util.ConcurrentModificationException 时的解决办法
//(1) 根据某个id直接删除全部(如果数据库中的多对多关系)
Set<Largess> largessSet = promotion.getLargess();
largessSet.clear();
//或者
for(Iterator it = largessSet.iterator();it.hasNext();) {
Largess largess = (Largess)it.next();
it.remove();//先移除
largessSet.remove(largess);
}
//(2) 根据某个条件删除 就是用Iterator
for(Iterator it = promotionList.iterator();it.hasNext();) {
Promotion promotion = (Promotion)it.next();
it.remove();//先移除
if(promotion.getEndTime().before(new Date())) {
xxxManager.remove(promotion);
//TODO 其他处理
}
}
分享到:
相关推荐
ConcurrentModificationException解决办法.md
**解决办法:** 1. **通过Iterator修改集合:** 如果你需要在遍历过程中修改集合,应使用迭代器自身的`remove()`方法。这样,迭代器会正确地处理集合的修改,避免异常。 ```java while (it.hasNext()) { ...
**解决办法:** 1. **通过 Iterator 修改 Hashtable:** 当你必须在遍历过程中删除元素时,应使用迭代器的 `remove()` 方法而不是集合的 `remove()` 方法。这是因为迭代器的 `remove()` 方法会同步更新迭代器的...
解决办法包括: - **检查类型:** 确认变量的类型与期望的类型相匹配。 - **赋值和表达式:** 确保赋值操作符两侧的类型一致,且表达式中的所有操作都是合法的。 - **方法调用:** 检查方法调用中的参数类型是否符合...
解决办法包括恢复备份数据,或者检查存储机制的稳定性和正确性。 5. **IllegalStateException: Session已失效**:当尝试访问一个已经失效的HttpSession时,会抛出此异常。确保在适当的时候关闭或重新创建Session,...
2. **解决办法**: - 使用线程安全的`Vector`替代`ArrayList`。 - 通过`Collections.synchronizedList()`方法将`ArrayList`转换为线程安全的版本。 - 使用`CopyOnWriteArrayList`,它采用写时复制策略,读操作时...
解决办法是在使用前确保所有可能出现的null值已经得到妥善处理。 2. **初始化HashMap的容量大小**: 阿里巴巴建议初始化HashMap时指定容量,以避免内部扩容操作带来的性能开销。合适的初始化容量取决于预期的元素...
多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。 5、String是最基本的数据类型吗? 基本数据类型包括byte、int、char、long、float、double、boolean和short。 java....
多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。 2、String是最基本的数据类型吗? 基本数据类型包括byte、int、char、long、float、double、boolean和short。 java.lang....