Lambda 表達(dá)式

Lambda表達(dá)式是java 8 帶來的革新.
Lambda 表達(dá)式讓你能夠?qū)⒑瘮?shù)作為方法參數(shù)火窒,或者將代碼作為數(shù)據(jù)對待拷姿。
優(yōu)點(diǎn):在 Java 8 之前晦毙,匿名內(nèi)部類来惧,監(jiān)聽器和事件處理器的使用都顯得很冗長暇赤,減少代碼量心例,可讀性增強(qiáng), 發(fā)揮多核 CPU 的優(yōu)勢;
使用范圍: 匿名內(nèi)部類鞋囊,監(jiān)聽器和事件處理器, 集合.
<h3>1.使用lambda表達(dá)式</h3>
要使用 Lambda 表達(dá)式止后,需要定義一個函數(shù)式接口, 如:
Function<T, R>:將 T 作為輸入,返回 R 作為輸出溜腐,他還包含了和其他函數(shù)組合的默認(rèn)方法译株。
Predicate<T> :將 T 作為輸入,返回一個布爾值作為輸出挺益,該接口包含多種默認(rèn)方法來將 Predicate 組合成其他復(fù)雜的邏輯(與歉糜、或、非)望众。
Consumer<T> :將 T 作為輸入匪补,不返回任何內(nèi)容,表示在單個參數(shù)上的操作烂翰。

上面的函數(shù)式接口是jdk 8里定義的,也可以自定義,定義一個接口,然后定義一個(只能一個)抽象方法.這個類就被識別成Functional Interface,當(dāng)然最好在接口前加個標(biāo)簽@FunctionalInterface

@FunctionalInterface
public interface Functional<T>  {
    public void thefunction(T t);
}

<h3>2. lambda表達(dá)式</h3>
(Type t)->{ expression;}
由于可以識別Type 所以,可以簡化成
(t)->{expression;}
如果只有一個變量,可以簡化括號
t->{expression;}
如果只有一行語句,可以簡化括號,去掉括號以后就不用加分號了
(t)->expression
例子:

Map<String,String> map…
map.forEach((String key,String value)
->{ System.out.println(key +" : "+value);}
);

簡化成

map.forEach((key, value)
-> System.out.println(key +" : "+value)
);

還有一種寫法
Type::Method
例子

i->System.out.println(i) 

也可以寫成

System.out::println 

<h3>參考目錄</h3>
Java 8 新特性概述
Oracle java 8

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末夯缺,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子甘耿,更是在濱河造成了極大的恐慌踊兜,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,290評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件棵里,死亡現(xiàn)場離奇詭異润文,居然都是意外死亡姐呐,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,107評論 2 385
  • 文/潘曉璐 我一進(jìn)店門典蝌,熙熙樓的掌柜王于貴愁眉苦臉地迎上來曙砂,“玉大人,你說我怎么就攤上這事骏掀○海” “怎么了?”我有些...
    開封第一講書人閱讀 156,872評論 0 347
  • 文/不壞的土叔 我叫張陵截驮,是天一觀的道長笑陈。 經(jīng)常有香客問我,道長葵袭,這世上最難降的妖魔是什么涵妥? 我笑而不...
    開封第一講書人閱讀 56,415評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮坡锡,結(jié)果婚禮上蓬网,老公的妹妹穿的比我還像新娘。我一直安慰自己鹉勒,他們只是感情好帆锋,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,453評論 6 385
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著禽额,像睡著了一般锯厢。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上脯倒,一...
    開封第一講書人閱讀 49,784評論 1 290
  • 那天实辑,我揣著相機(jī)與錄音,去河邊找鬼盔憨。 笑死徙菠,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的郁岩。 我是一名探鬼主播婿奔,決...
    沈念sama閱讀 38,927評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼问慎!你這毒婦竟也來了萍摊?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,691評論 0 266
  • 序言:老撾萬榮一對情侶失蹤如叼,失蹤者是張志新(化名)和其女友劉穎冰木,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,137評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡踊沸,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,472評論 2 326
  • 正文 我和宋清朗相戀三年歇终,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片逼龟。...
    茶點(diǎn)故事閱讀 38,622評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡评凝,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出腺律,到底是詐尸還是另有隱情奕短,我是刑警寧澤,帶...
    沈念sama閱讀 34,289評論 4 329
  • 正文 年R本政府宣布匀钧,位于F島的核電站翎碑,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏之斯。R本人自食惡果不足惜日杈,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,887評論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望佑刷。 院中可真熱鬧达椰,春花似錦、人聲如沸项乒。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,741評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽檀何。三九已至,卻和暖如春廷支,著一層夾襖步出監(jiān)牢的瞬間频鉴,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評論 1 265
  • 我被黑心中介騙來泰國打工恋拍, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留垛孔,地道東北人。 一個月前我還...
    沈念sama閱讀 46,316評論 2 360
  • 正文 我出身青樓施敢,卻偏偏與公主長得像周荐,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子僵娃,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,490評論 2 348

推薦閱讀更多精彩內(nèi)容

  • Java 8 lambda表達(dá)式示例 轉(zhuǎn)自importNew 原文鏈接 例1概作、用lambda表達(dá)式實(shí)現(xiàn)Runnab...
    低至一折起閱讀 1,363評論 0 3
  • 摘要:此篇文章主要介紹 Java8 Lambda 表達(dá)式產(chǎn)生的背景和用法,以及 Lambda 表達(dá)式與匿名類的不同...
    OneAPM閱讀 2,071評論 0 26
  • 簡介 概念 Lambda 表達(dá)式可以理解為簡潔地表示可傳遞的匿名函數(shù)的一種方式:它沒有名稱默怨,但它有參數(shù)列表讯榕、函數(shù)主...
    劉滌生閱讀 3,194評論 5 18
  • 聲明:本文翻譯自The Java? Tutorials(官方文檔) 簡述 匿名類有一個問題,如果匿名類的實(shí)現(xiàn)非常簡...
    猴子小皮球閱讀 4,639評論 0 9
  • 纖手黯貂蟬 溫柔如星星般浪漫 星星遙不可攀 聽著風(fēng)望斷 邂逅是煙花的燦爛 煙花眨眼暗淡 都說戀愛最怕勇敢 對對男女...
    海水未頂閱讀 175評論 0 1