Java中JDK1.8lambda怎么用
创始人
2024-12-22 13:42:24
0次

具体代码如下所示:

public class Student {  private String id;  private String name;  private String age;  private String address;  public Student(String id, String name, String age, String address) {    this.id = id;    this.name = name;    this.age = age;    this.address = address;  }  public String getId() {    return id;  }  public void setId(String id) {    this.id = id;  }  public String getName() {    return name;  }  public void setName(String name) {    this.name = name;  }  public String getAge() {    return age;  }  public void setAge(String age) {    this.age = age;  }  public String getAddress() {    return address;  }  public void setAddress(String address) {    this.address = address;  }  @Override  public String toString() {    return "Student{" +        "id='" + id + '\'' +        ", name='" + name + '\'' +        ", age='" + age + '\'' +        ", address='" + address + '\'' +        '}';  }}public class TestStrean {  public static void main(String[] args){    Student stuA = new Student("1", "A", "M", "184");    Student stuB = new Student("2", "B", "G", "163");    Student stuC = new Student("3", "C", "M", "175");    Student stuD = new Student("4", "D", "G", "158");    Student stuE = new Student("5", "E", "M", "175");    List list = new ArrayList<>();    list.add(stuA);    list.add(stuB);    list.add(stuC);    list.add(stuD);    list.add(stuE);    /*-----------forEach-----------------------*///    list.forEach(item -> item.setId(item.getAddress()+"test") );    /*-----------filter-----------------------*///    List newList=list.stream().filter(item -> item.getAge().contains("G")).collect(Collectors.toList());    /*-----------filter的复杂应用-----------------------*///    list.stream().filter(new Predicate(){////      @Override//      public boolean test(Student student) {//        if(student.getName() !=null){//          return student.getName().contains("30");//        }else{//          return true;//        }//      }//    }).collect(Collectors.toList());    /*-----------分页-----------------------*///    List newList=list.stream().skip(4).limit(3).collect(Collectors.toList());     /*-----------map 返回一个新的list-----------------------*///    List newList=list.stream().map(item ->{//      return new Student(//          item.getAddress(),//          item.getAge(),//          item.getName(),//          item.getId()//      );//    }).collect(Collectors.toList());    /*-----------map 返回一个原来的的list并赋值-----------------------*///    List newList=list.stream().map(item ->{//      item.setId("1");//      return item;//    }).collect(Collectors.toList());    /*-----------flatMap-----------------------*///    List newList= list.stream().flatMap(item ->{//      String[] split =item.getAddress().split("");//      String[] s2 = (String[]) Arrays.stream(split).filter(s -> s.contains("1")).toArray();//      return s2;//        });    /*-----------sorted compareTo排序-----------------------*///    List newList=list.stream().sorted((o1,o2)->{//      if(o1.getAddress().equals(o2.getAddress())){//        return Integer.parseInt(o1.getId())-Integer.parseInt(o2.getId());//      }else{//        return o1.getAddress().compareTo(o2.getAddress());//      }//    }).collect(Collectors.toList());    /*-----------sorted Comparator排序-----------------------*///    List newList=list.stream().sorted(//        Comparator.comparing(Student::getAddress).reversed()//    ).collect(Collectors.toList());    /*-----------sorted3 多条件排序-----------------------*///    List newList=list.stream().sorted(//        Comparator.comparing(Student::getAddress).thenComparing(Comparator.comparing(Student::getId).reversed())//    ).collect(Collectors.toList());//    boolean b=list.stream().anyMatch(item -> item.getAge().contains("G"));//    System.out.println(b);     /*-----------Collector tomap----------------------*///    Map newList=list.stream().sorted(//        Comparator.comparing(Student::getAddress).thenComparing(Comparator.comparing(Student::getId).reversed())//    ).collect(Collectors.toMap(Student::getId,Student::getAddress));     /*-----------Collector groupingBy----------------------*/    Map> ageMap = list.stream().collect(Collectors.groupingBy(Student::getAddress));    System.out.println(ageMap );  }}                
            
            
            

相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...