首页 > 编程语言 >Java8 List集合如何移除满足条件的元素

Java8 List集合如何移除满足条件的元素

时间:2023-05-29 22:34:11浏览次数:44  
标签:iterator List list assSupplementList item 移除 Java8

1.移除List<String>中指定元素

       for(int i = assSupplementList.size() - 1; i >= 0; i--) {
            TypgHouseOrderAssessmentSupplement item = assSupplementList.get(i);
            if (item.getBzx().contains("新建房屋")) {
                assSupplementList.remove(item);
            }
        }

 

2.移除List<对象>中指定元素

         Iterator<TypgHouseOrderAssessmentSupplement> iterator = assSupplementList.iterator();
         while(iterator.hasNext()) {
             TypgHouseOrderAssessmentSupplement item = iterator.next();
             if (item.getBzx().contains("新建房屋")) {
                 iterator.remove();
            }
         }

 

3、使用Java8中的lambda表达式过滤

    //从list中过滤出,list字段中不包含某个字符串的数据
    //list的yourStr字段的值:“aaa,bbb,ccc”,XXArr()属性的值是:“aaa,ccc”
    List<YourBean> list = xxService.findList(yourBean);
    for (String index : beanName.getXXArr()) {
        list = list.stream().filter(item -> item.getYourStr().indexOf(index) < 0).collect(Collectors.toList());
    }
    return list;

 

标签:iterator,List,list,assSupplementList,item,移除,Java8
From: https://www.cnblogs.com/Fooo/p/17441878.html

相关文章

  • java集合过滤出符合条件的List元素集合(lambda表达式)
    使用Java8中的lambda表达式过滤ModelMapmodel=newModelMap();TSmClazzTSmClazz=tSmClazzService.get(id);List<Student>students=TSmClazz.getStudents();if(flag.equals("0")){List<Student>boys......
  • linphone-去掉HistoryListFragment界面
    说明HistoryListFragment界面包括:1.拨打电话记录2.未接听记录3.修改记录看图HistoryListFragment主界面修改拨打记录界面好,开始去掉这个界面需要分析的点每次拨打记录是怎样形成的。记录还可以分日期显示一组。没有接到的电话是怎样记录的就该记录时,那个工具栏是怎样变......
  • 10ArrayList&学生管理系统
    1.ArrayList集合和数组的优势对比:长度可变,自动扩容。添加数据的时候不需要考虑索引,默认将数据添加到末尾1.1ArrayList类概述什么是集合​ 提供一种存储空间可变的存储模型,存储的数据容量可以发生改变ArrayList集合的特点​ 长度可以变化,只能存储引用数据类型。在存......
  • ArrayList的实现原理
    一、 ArrayList概述:  ArrayList是基于数组实现的,是一个动态数组,其容量能自动增长,类似于C语言中的动态申请内存,动态增长内存。   ArrayList不是线程安全的,只能用在单线程环境下,多线程环境下可以考虑用Collections.synchronizedList(Listl)函数返回一个线程安全的ArrayList......
  • 批量删除List的元素
    从C#List的源码看,Remove()方法会触发数组的位移,如果在循环中调用会十分费:for(inti=0;i<arr.Count;i++){if(arr[i].IsNull()){arr.Remove(arr[i]);}}这个时候可以使用Rem......
  • java8 stream匹配 anyMatch,allMatch,noneMatch
    anyMatch:判断的条件里,任意一个元素成功,返回trueallMatch:判断条件里的元素,所有的都是,返回truenoneMatch:与allMatch相反,判断条件里的元素,所有的都不是,返回truecount方法,跟List接口中的.size()一样,返回的都是这个集合流的元素的长度,不同的是,流是集合的一个高级工厂,中间操作是工厂里......
  • Arraylist1
    importjava.time.LocalDate;importjava.util.ArrayList;importjava.util.List;publicclassList1{publicstaticvoidmain(String[]args){//集合类(collection):长度可变,不同类型//1--创建对象ArrayListarrayList=newArrayList();//创建对象(......
  • Python中列表(List)元组(Tuple)集合(Set)的区别和适用场景
    在Python中,列表(List)和元组(Tuple)都是序列类型的数据结构。它们具有相似的特性,如可以通过下标访问元素、支持切片操作等。而集合(Set)则是一个无序的集合类型。下面是它们各自的特点和适用场景:列表(List):有序的序列类型。可以存储任意类型的对象,并且可以动态地修改元素。适用于需......
  • cimplicity Issue List
    客户端连接不上服务器解决方案1、确认服务器启动时是在授权模式下运行,如果不在授权模式下,那么启动时会弹窗一个对话框,对话框提示没有授权,两小时后会退出,这种情况下,客户端是连接不上服务端的。2、确认网络通畅ping一下3、确认服务端和客户端版本相同4、确认客......
  • 【LeetCode】203. 移除链表元素
    203.移除链表元素思路一:直接删除法(迭代)1.从头结点开始向后遍历,找到等于val的结点;2.假设cur->val=val,那么要让cur的前一个结点prev的next指针指向cur的下一个结点,即prev->next=cur->next。要注意的是当头结点的值等于val时(head->val=val),因为头节点没有前一个结点,所以可......