看了半天别人写的,让自己写也写不出来。哭哭哭哭。。开始学习。。。。。。

一、Lambda基本语法:

单行:() ->   system.out.println("lalllallalll")

多行: () ->{

system.out.println("lalllallalll")

还有带参数的 (even) ->{ system.out.println("lalllallalll")

俩个参数的(x,y)->{  x+y }

也可以直接加上(Long  x, Long  y)->{  x+y }

predicate的接口中,接收一个对象返回一个boolean

二、流

stream

collect(toList())由stream里的值生成一个列表,是一个及早求值操作

map 可以将一种类型的值转换成另外一种类型

filte 遍历数据并检查其中的元素时

flatMap  可用stream替换值,然后将多个Stream连接成一个Stream

max 最大值 min最小值

例、List<Trask> trasks=asList(new Track("bakai",524),

              new Track("Violets for drgrff",378),

              new Track("Time Was",451));

Trask shortestTrask=trask.stream()

                .min(Comparator.comparing(track -> track.getLength()))

                .get();

 为了让Stream对象按照曲目长度进行排序,需要给他传Comparator对象,java8提供了一个新的静态方法comparing,使用他的方法实现一个比较器,

posted on 2018-08-02 22:02  爱上码  阅读(112)  评论(0编辑  收藏  举报