Java中List删除元素方法总结

文章目录

        • Java中List删除元素
          • 删除方式总览
          • for循环顺序遍历删除
          • for循环反向遍历删除
          • 使用Iterator迭代器删除
          • 使用lambda表达式删除列表元素(推荐)
          • 使用方法引用删除列表元素

Java中List删除元素

删除方式总览
  • for循环顺序遍历删除
  • for循环反向遍历删除
  • CopyOnWriteArrayList遍历删除
  • 使用Iterator迭代器删除
  • 使用lambda表达式删除列表元素(推荐)
  • 使用方法引用删除列表元素
for循环顺序遍历删除
for(int i = 0, len = list.size(); i < len; i++){  
    if(list.get(i) == 1){  
       list.remove(i);  
       len--;
       i--;
    }  
}
for循环反向遍历删除
for(int i = size - 1; i >= 0; i--){
    String item = list.get(i);
    if(target.equals(item)){
        list.remove(item);
    }
}

CopyOnWriteArrayList遍历删除

CopyOnWriteArrayList<String> cowList = new CopyOnWriteArrayList<String>(list);
for (String item : cowList) {
    if (item.equals("1")) {
        cowList.remove(item);
    }
}

使用Iterator迭代器删除
Iterator<Integer> iterator = list.iterator();  
while(iterator.hasNext()){  
    int i = iterator.next();  
    if(i == 1){  
        iterator.remove();
    }  
}
使用lambda表达式删除列表元素(推荐)
list.removeIf(a -> "1".equal(a));
使用方法引用删除列表元素
public static Boolean removeA(String s) {
    return "a".equals(s);
}
public static void main(String[] args) {
    ArrayList<String> list = new ArrayList<>();
 	list.removeIf(AccountOperationController::removeA);
}

你可能感兴趣的:(java,java,list,开发语言)