java.util.ConcurrentModificationException异常处理

原因:我在使用jdk1.7的时候要把ArrayList中的一些数据过滤一下写了如下代码:

        for (UserTrial userTrial : couponsByUserId) {
         
            for (BonusPoint allReductionCoupon : allReductionCoupons) {
                if (userTrial.getActivity().equals(allReductionCoupon.getActivity())){
                    allReductionCoupons.remove(allReductionCoupon );
                }
            }

即我想把couponsByUserId中有的数据在allReductionCoupons删除:运行报错!

 原因:我在遍历allReductionCoupons时试图删除其中的一条数据,出现异常。

       内部原因可见这个博客

作者: Matrix海子

 最终修改下:

      for (UserTrial userTrial : couponsByUserId) {
            JSONObject object = new JSONObject();
            BonusPoint ishave = null;
            for (BonusPoint allReductionCoupon : allReductionCoupons) {
                if (userTrial.getActivity().equals(allReductionCoupon.getActivity())){
                    ishave = allReductionCoupon;
                    break;
                }
            }
            if(ishave!=null){
                allReductionCoupons.remove(ishave);
            }

猜你喜欢

转载自www.cnblogs.com/wzzxz/p/11800334.html
今日推荐