list.removeIf(filter ->{ return containerList.contains(filter); });
功能:移除list中已经在containerList 容器中存在的元素。
两种情况
public static void remove(List<String> list, String target){ for(int i = list.size() - 1; i >= 0; i--){ String item = list.get(i); if(target.equals(item)){ list.remove(item); } } }
public static void removeDutyList(List<DutyListVo> list, String target){ Iterator<DutyListVo> iterator = list.iterator(); while(iterator.hasNext()){ DutyListVo dutyListVo=iterator.next(); if(dutyListVo.getDate().equals(target)){ iterator.remove(); }else{ } } }
注意:移除List<对象>中指定对象的时候,如果使用for循环好像有问题,使用iterator遍历应该最好。
使用for循环的时候好像会抛出 ConcurrentModificationException 异常。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。