Java8新特性 -- Lambda基礎語法

Lambda 表達式的基礎語法: Java8引入了一個新的操做符 「->」  該操做符稱爲箭頭操做符或Lambda操做符, 該操做符將Lambda表達式拆分爲兩部分:函數

  左側: Lambda表達式參數列表;blog

  右側: Lambda表達式中所需執行的功能,即Lambda體。接口

語法格式一: 無參數,無返回值。    ()  -> { }編譯器

      例如: Runnable runnable = () -> System.out.print("Hello Lambda");io

 

語法格式二: 有一個參數,而且無返回值。 (x) ->{ }編譯

說明: 若只有一個參數,小括號能夠神略不寫。
Consumer<String> consumer = (x) -> System.out.print("Hello Lambda");

 

語法格式四: 有兩個以上參數,又返回值, 而且Lambda式中有多條語句。基礎

說明: 若Lambda體中只有一條語句,return 和 大括號均可以省略不寫。數據類型

Comparator<Integer> comparator = (x, y) -> {
System.out.print("Hello Lambda");
return Integer.compare(x,y);
};

說明:  Lambda表達式參數列表的數據類型能夠省略不寫,由於JVM的編譯器經過上下文能夠推斷出類型,即  「類型推斷」語法

 

Lambda表達式須要「函數式接口」的支持。方法

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

相關文章
相關標籤/搜索