Day17lambda表達(dá)式

Lambda表達(dá)式

語法:
{參數(shù)}->{表達(dá)式或者函數(shù)體}

例子:
//無參數(shù),無返回值
() -> {System.out.println("Hello World");}
//有參數(shù),有返回值
x -> 5 * x
//多個參數(shù),有返回值
(integer a, integer b) -> (compare.(a, b))

當(dāng)body部分只有一條語句時,不需要寫return,也可以不寫大括號,當(dāng)參數(shù)部分只有一個參數(shù)時,也可以不寫括號
參數(shù)部分也不需要寫參數(shù)類型,編譯器會自動識別

在函數(shù)式接口可以直接使用Lambda表帶是來創(chuàng)建對象
函數(shù)式接口:只包含一個抽象方法的接口

如果需要將Lambda表達(dá)式作為參數(shù)傳遞,接受Lambda表達(dá)式的參數(shù)類型必須和該Lambda表達(dá)式的函數(shù)式接口兼容!

Lambda表達(dá)式有什么用呢?
簡便了代碼,相當(dāng)于語法糖
原本我們這么寫


new Thread(new Runnable() {  
    public void run() {  
            System.out.println("hello");  
        }  
}).start(); 

使用Lambda表達(dá)式

new Thread(() -> {System.out.println("hello World");}).start();
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容