Lambda 是啥玩意
簡單來說,Lambda 就是一個匿名的方法,就這樣,沒啥特別的。它采用一種非常簡潔的方式來定義方法。當你想傳遞可復(fù)用的方法片段時,匿名方法非常有用。例如,將一個方法傳遞給另外一個方法。
Tips
其實很多主流語言早已支持 lambda 表達式,例如,Scala,C#,Objective-C,Ruby,C++(11), Python等等。所以也不是啥新玩意兒。
匿名方法 VS 匿名類
需要謹記一點,在 Java 里,匿名方法和匿名類并不是相同的。匿名類仍然需要實例化對象,匿名類雖然沒有明確的名字,但它只有是一個對象時才能夠使用。
而匿名方法并不需要給它分配實例,方法與作用的數(shù)據(jù)分離,而對象與它所作用的數(shù)據(jù)密切相關(guān)。
Java 中的 Lambda 表達式
在 Java 8之前,一個實現(xiàn)了只有一個抽象方法的接口的匿名類看起來更像Lambda 表達式。下面的代碼中,
延伸閱讀
學習是年輕人改變自己的最好方式