Java8之lambda表达式的总结
生活随笔
收集整理的這篇文章主要介紹了
Java8之lambda表达式的总结
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
什么是lambda表達(dá)式?
Lambda 是一個(gè)匿名函數(shù),我們可以把 Lambda表達(dá)式理解為是一段可以傳遞的代碼(將代碼像數(shù)據(jù)一樣進(jìn)行傳遞)。可以寫(xiě)出更簡(jiǎn)潔、更靈活的代碼。作為一種更緊湊的代碼風(fēng)格,使Java的語(yǔ)言表達(dá)能力得到了提升。
?
?
Lambda 表達(dá)式在Java 語(yǔ)言中引入了一個(gè)新的語(yǔ)法元素和操作符。這個(gè)操作符為 “->” , 該操作符被稱(chēng)為 Lambda 操作符或剪頭操作符。它將 Lambda 分為
兩個(gè)部分:
? ? ?左側(cè):指定了 Lambda 表達(dá)式需要的所有參數(shù)
? ? ?右側(cè):指定了 Lambda 體,即 Lambda 表達(dá)式要執(zhí)行的功能
package com.atguigu.thread; @FunctionalInterface interface Foo{// public void sayHello() ; // public void say886() ;public int add(int x,int y);default int div(int x,int y) {return x/y;}public static int sub(int x,int y) {return x-y;} }/*** * @Description: Lambda Express-----> 函數(shù)式編程* 1 拷貝小括號(hào)(形參列表),寫(xiě)死右箭頭 ->,落地大括號(hào) {方法實(shí)現(xiàn)}* 2 有且只有一個(gè)public方法@FunctionalInterface注解增強(qiáng)定義* 3 default方法默認(rèn)實(shí)現(xiàn)* 4 靜態(tài)方法實(shí)現(xiàn)*/ public class LambdaDemo {public static void main(String[] args){ // Foo foo = new Foo() { // @Override // public void sayHello() { // System.out.println("Hello!!"); // } // // @Override // public void say886() { // // TODO Auto-generated method stub // // } // }; // foo.sayHello(); // System.out.println("============"); // foo = ()->{System.out.println("Hello!! lambda !!");}; // foo.sayHello();Foo foo = (x,y)->{System.out.println("Hello!! lambda !!");return x+y;};int result = foo.add(3,5);System.out.println("******result="+result);System.out.println("******result div="+foo.div(10, 2));System.out.println("******result sub="+Foo.sub(10, 2));} }
?
總結(jié)
以上是生活随笔為你收集整理的Java8之lambda表达式的总结的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: lambda表达式的使用 || Lamb
- 下一篇: 线程间定制化调用通信—— 1 高内聚低