zoukankan      html  css  js  c++  java
  • Java Stream() 两个对象数组根据ID获取交集

        @Test
        public void testStream01(){
            ArrayList<ChargeStudent> stu1 = new ArrayList<>();
            ArrayList<ChargeStudent> stu2 = new ArrayList<>();
            for (int i= 5;i<10;i++){
                ChargeStudent student = new ChargeStudent();
                student.setStudentName("张"+i);
                student.setSid(String.valueOf(i));
                stu1.add(student);
            }
            for (int i= 0;i<10;i++){
                ChargeStudent student = new ChargeStudent();
                student.setStudentName("王"+i);
                student.setSid(String.valueOf(i));
                stu2.add(student);
            }
            List<ChargeStudent> collect = stu1.stream().filter(o -> stu2.stream().map(ChargeStudent::getSid).anyMatch(id -> Objects.equals(o.getSid(), id))).collect(Collectors.toList());
            collect.stream().forEach(o->{
                System.out.println(o.getSid());
                System.out.println(o.getStudentName());
                System.out.println("===========");
            });
        }
    

      

  • 相关阅读:
    struct&Method
    SetFinalizer、runtime.GC
    Map(没有写底层)
    数组和切片
    函数
    指针、Time
    字符串、strings、strconv
    基本类型和运算符
    第二阶段的事后诸葛亮
    第二个冲刺阶段第10天
  • 原文地址:https://www.cnblogs.com/lucky-jun/p/15076201.html
Copyright © 2011-2022 走看看