上代码
for (Map<String,Object> user:userList){
for(TSBrOrderDetailRepairmanVO repairmanVO:repairmanVOList){
if(user.get("id").toString().equals(repairmanVO.getUId())){
userList.remove(user);
}
这里的 userList的长度是2,但循环的话只循环了一次
在Java中,当你在循环一个列表的同时又对该列表进行修改时,就会抛出一个ConcurrentModificationException异常。这是因为在遍历列表时,迭代器记录了列表中元素的数量和状态,并且期望在列表的生命周期内保持一致性。如果你在遍历列表的同时修改了它,那么迭代器就会失效并抛出异常。
在你的代码中,你在遍历userList时,又尝试移除其中的元素。这就导致了迭代器失效并抛出异常,但是由于你没有在代码中捕获该异常,因此程序终止了。因此,如果你想要安全地从列表中删除元素,你应该使用一个Iterator来遍历列表,并调用Iterator的remove()方法来删除元素,而不是直接在列表上进行修改。修改后的代码可以像这样:
Iterator<Map<String, Object>> iterator = userList.iterator();
while(iterator.hasNext()){
Map<String, Object> user = iterator.next();
for(TSBrOrderDetailRepairmanVO repairmanVO:repairmanVOList){
if(user.get("id").toString().equals(repairmanVO.getUId())){
iterator.remove();
break; // 退出循环,因为已经找到匹配的元素
java ES实体字段为关键词报错 es 字段属性
类型和映射在ES中映射类似关系型数据库中的schema,描述了文档中有哪些字段和字段的类型,如string,data,int等。而 类型 是一组具有相关性的映射组成,然后使用"properties"来表示该类型中可能包含的字段属性。 具体如下:{
"data": {
"mappings": {
"people": {
"propertie
python如何用repalce在字符串中添加引号 python字符串添加括号
一、Python字符串 1、字符串是 Python 中最常用的数据类型。我们可以使用引号('或")来创建字符串。创建字符串很简单,只要为变量分配一个值即可。例如:var1 = 'Hello World!'
var2 = "Python Runoob"2、Python不支持单字符类型,单字符也在Python也是作为一个字符串使用。Python访问子字符串,可以使用方括号来