错误代码:
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31List<Permission> permissions = new ArrayList<Permission>(); //显示第1页每页显示3条 User user = userRepository.findByUserId(uid); user.getRoles().stream().forEach(item->{ Role role = roleRepository.findByRoleId(item.getRoleId()); if(!CollectionUtils.isEmpty(role.getPermissions())){ for(Permission permission : role.getPermissions()){ if(permission.getPermisionParentId() == null){ permissions.add(permission); } } } }); // 错误异常代码 for(Permission permission : permissions){ if(permission.getParent() != null){ permissions.remove(permission); } } // 修改后正常执行代码 Iterator<Permission> iterator = permissions.iterator(); while(iterator.hasNext()){ Permission permission = iterator.next(); if(permission.getPermisionParentId() != null){ iterator.remove(); } }
错误造成原因:在遍历list的过程中,如果修改了元素,会导致list中索引与对应的值不同,因此抛出此异常
java 造成原因分析请参考:https://blog.csdn.net/u011383372/article/details/84605241?utm_medium=distribute.pc_relevant.none-task-blog-searchFromBaidu-1.control&depth_1-utm_source=distribute.pc_relevant.none-task-blog-searchFromBaidu-1.control
最后
以上就是正直小蝴蝶最近收集整理的关于Java 提示:java.util.ConcurrentModificationException:null的全部内容,更多相关Java内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复