java中List如果想动态删除元素的话,我们可以使用迭代器,但是切记要使用迭代器删除,而不能直接使用list.remove(next),这样写会报并发修改异常的。
//通过迭代器可以直接删除哦 public List<String> updateList(List<String> list){ Iterator<String> it = list.iterator(); while(it.hasNext()){ boolean numberFlag = false; boolean flag = false; String s = it.next(); // 检查格式 for(int i=0;i<s.length();i++){ if(s.charAt(i) <= '9' && s.charAt(i) >= '0') numberFlag = true; if(s.charAt(i) == '_'){ flag = true; } if((s.charAt(i) > '9' || s.charAt(i) < '0') && s.charAt(i) != '_') { break; } } if(flag && numberFlag){ //如果使用list.remove(s)删除就会报错 it.remove(); } } return list; }