//剔除有冲正交易的记录Iterator<TradeOrderLogEntity> tradeOrderLogEntityIterator = tradeOrderLogEntityList.iterator();for (;tradeOrderLogEntityIterator.hasNext();){TradeOrderLogEntity tradeLog = tradeOrderLogEntityIterator.next(); // next 函数抛出空指针异常if (tradeLog == null) continue;for (TradeDetailDto tdd: reversOfflineBorrow) {if (tradeLog.getRelatedTradeid().equals(tdd.getOrderId())){// tradeOrderLogEntityList.remove(tradeLog);tradeOrderLogEntityIterator.remove();}}}// for (TradeOrderLogEntity tradeLog : tradeOrderLogEntityList) { //可以考虑用i ,配合remove(index)// for (TradeDetailDto tdd: reversOfflineBorrow) {// if (tradeLog.getRelatedTradeid().equals(tdd.getOrderId())){// tradeOrderLogEntityList.remove(tradeLog);// }// }// }
在for循环遍历中移除list元素会导致空指针异常,应该使用Iterator方式遍历,同
时移除时候使用Iterator.remove()
最后
以上就是文静仙人掌最近收集整理的关于for循环中移除元素的空指针坑的全部内容,更多相关for循环中移除元素内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复