java8的新特性1

一、lambda表達式java

二、函數式接口jvm

三、StreamAPI函數

四、方法的引用與構造器的引用指針

五、接口中的默認方法與靜態方法接口

六、新時間日期API內存

七、其餘新特性get

簡介編譯器

java8的新特性it

一、速度更快(內存結構、垃圾回收、並行拓展)io

二、代碼更少(新增新的語法lambda表達式)

三、強大的streamApI

四、便於並行

五、最大化減小空指針異常,optional

    lambda表達式

首先:lambda表達式是一個匿名函數,咱們能夠把lambda表達式理解爲一段能夠傳遞的代碼(將代碼像數據同樣傳遞)

例:Comparable<Integer> com=(x,y)->Integer.compare(x,y);

emplayees.stream().filter(e->e.getSalary()>=5000).foreach(System.out::println).limit(2);

lambda表達式的基礎語法,java8引入了一個新的操做->箭頭操做符將lambda表達式分爲倆部分

左側:lamdba表達式參數列表

右側:lambda表達式所需執行的功能即lambda表達體

語法格式一、無參數、無返回值。

()->功能,lambda體

語法格式二、有一個參數、無返回值

(x)->功能,lambda體

語法格式三、有一個參數沒有返回值,括號能夠不寫

x->功能lambda體

語法格式四、有倆個以上的參數、而且lambda有多條語句,有返回值

(x.y)->{lambda體}

語法格式五、若只有一條語句、return和{}可不寫

(x,y)->lambda體

語法格式6:lambda表達式的參數的數據類型能夠省略不寫,由於jvm編譯器經過上下文推斷出數據類型,即類型推斷

(Integer x,Integer y)->lambda體

lambda表達式須要函數式接口的支持

函數式接口:接口中只有一個抽象方法,可使用註解@FunctionInterface修飾,能夠檢查是不是函數式接口。

相關文章
相關標籤/搜索