美文网首页
删除list中某个特定元素

删除list中某个特定元素

作者: 一叶知秋_zgx | 来源:发表于2020-06-12 17:20 被阅读0次

当数据库查询出数据过后,发现有些数据不需要,所以这里要处理一下,加入循环list,根据判断条件去删除的话,就会出现异常。
所以这里用到了java8的新特性去删除。

  List<UserFictitious> list = new ArrayList<>();
        for (int i = 0; i < 50; i++){
            UserFictitious userFictitious = new UserFictitious();
            userFictitious.setUserFictitiousName(String.valueOf(i));
            list.add(userFictitious);
        }
  list.removeIf(item -> item.getUserFictitiousName().equals("1"));
  System.out.println(list);

底层的源码是根据迭代器的特性去删除,java8只是封装进了removeIf,简化了代码。

  default boolean removeIf(Predicate<? super E> filter) {
        Objects.requireNonNull(filter);
        boolean removed = false;
        final Iterator<E> each = iterator();
        while (each.hasNext()) {
            if (filter.test(each.next())) {
                each.remove();
                removed = true;
            }
        }
        return removed;
    }

相关文章

网友评论

      本文标题:删除list中某个特定元素

      本文链接:https://www.haomeiwen.com/subject/ibrntktx.html