最近学习了lamada的常见使用方法,发现其实lamada表达式的确是匿名内部类一种简便的使用,话不多说,如下举例
Student studentww=new Student("wangwu",99,"code");
Student studentclr=new Student("clr",100,"qianduan");
findFirst().get();过滤:要返回list中单个对象的数据时候,且有过滤条件的
Student students=studentLIst.stream().filter(e->e.getName().startsWith("w")).findFirst().get();
.map(e->e.getAge())取数据操作:将对象中的某个字段取出来组成list
lIst.stream().map(e->e.getAge()).collect(Collectors.toList());
.sorted(Integer::compareTo) 排序且取出第一个
studentLIst.stream().map(e->e.getAge()).sorted(Integer::compareTo).findFirst().get();
.sorted(Integer::compareTo) 排序且返回list<Integer>
studentLIst.stream().map(e->e.getAge()).sorted(Integer::compareTo).collect(Collectors.toList());
.sorted((p1,p2)->p1.getAge()-p2.getAge()) 排序且返回list<Student>
studentLIst.stream().sorted((p1,p2)->p1.getAge()-p2.getAge()).collect(Collectors.toList());
(e)->{studentLIst11.add(e);}); 将满足条件的放入另外一个List
studentLIst.stream().filter((e)->e.getAge()>99).forEach((e)->{
studentLIst11.add(e);
});
一开始接触lamada表达式会感觉有点难以理解,慢慢就好了,习惯就好。加油