JDK1.8新特性Lambda語法

package com.test4;
public class JDK8Demo {
    public static void main(String[] args) {
        
        //要實現(xiàn)接口的方法:
        
        
        //第一種勘伺,創(chuàng)建繼承接口的實現(xiàn)類:
        IEat ieat1 = new IEatImpl();
        ieat1.eat();
        
        //第二種脱篙,創(chuàng)建匿名內(nèi)部類實現(xiàn):
        IEat ieat2 = new IEat(){
            public void eat(){
                System.out.println("eat bnananl");
            }
        };
        ieat2.eat();
        
        //第三種,使用JDK1.8新特性lambda方法:語法: (參數(shù)1鼎姐,參數(shù)2哪雕,...) -> {代碼塊;};
        /**
        使用Lambda表達(dá)式的前提:接口里只有一個抽象方法
        (1)沒有參數(shù)時使用Lambda表達(dá)式
        (2)帶參數(shù)時使用Lambda表達(dá)式
        (3)代碼塊中只有一句代碼時使用Lambda表達(dá)式
        (4)代碼塊中有多句代碼塊時使用Lambda表達(dá)式
        (5)有返回值的代碼塊
        (6)參數(shù)中使用final關(guān)鍵字
        */
        
        //無參的Lambda表達(dá)式
        IEat ieat3 = () -> {System.out.println("eat tomato");};
        ieat3.eat();
        
        //實現(xiàn)方法的代碼塊只有一句時船殉,花括號可以省略
        IEat ieat4 = () -> System.out.println("eat tomato");
        ieat4.eat();
        
        //帶參數(shù)時
        IEat ieat5 = (String name) -> {System.out.println("eat tomato"+name);};
        ieat5.eat("tomato");
        //帶參數(shù)時類型也可以省去
        IEat ieat6 = (name) -> {System.out.println("eat tomato"+name);};
        ieat6.eat("tomato");
        //帶多個參數(shù)時類型也可以省去
        IEat ieat6 = (name,thing) -> {System.out.println("eat tomato"+name+thing);};
        ieat6.eat("tomato","thinig");

        //接口里的方法參數(shù)使用final修飾時,Lambda表達(dá)式里的參數(shù)也必須帶上final
        IEat ieat7 = (final String name) -> {System.out.println("eat tomato"+name);};
        ieat7.eat("tomato");
        
        //有返回值時
        IEat ieat8 = () -> {
            System.out.println("eat tomato");
            return 10;
        };
        ieat8.eat();
        
        //有返回值時斯嚎,且只有一句代碼塊時利虫,且該代碼塊就是返回語句,花括號可以省去
        IEat ieat9 = () -> 10; //return 10堡僻;renturn也要省去
        ieat9.eat();

    }

}

//只有一個抽象方法的接口
interface IEat{
    public void eat();
}

class IEatImpl implements IEat{
    public void eat(){
        System.out.println("eat apple");
    }
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末糠惫,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子钉疫,更是在濱河造成了極大的恐慌硼讽,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,826評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件牲阁,死亡現(xiàn)場離奇詭異固阁,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)城菊,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,968評論 3 395
  • 文/潘曉璐 我一進(jìn)店門备燃,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人凌唬,你說我怎么就攤上這事并齐。” “怎么了?”我有些...
    開封第一講書人閱讀 164,234評論 0 354
  • 文/不壞的土叔 我叫張陵况褪,是天一觀的道長撕贞。 經(jīng)常有香客問我,道長窝剖,這世上最難降的妖魔是什么麻掸? 我笑而不...
    開封第一講書人閱讀 58,562評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮赐纱,結(jié)果婚禮上脊奋,老公的妹妹穿的比我還像新娘。我一直安慰自己疙描,他們只是感情好诚隙,可當(dāng)我...
    茶點故事閱讀 67,611評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著起胰,像睡著了一般久又。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上效五,一...
    開封第一講書人閱讀 51,482評論 1 302
  • 那天地消,我揣著相機(jī)與錄音,去河邊找鬼畏妖。 笑死脉执,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的戒劫。 我是一名探鬼主播半夷,決...
    沈念sama閱讀 40,271評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼迅细!你這毒婦竟也來了巫橄?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,166評論 0 276
  • 序言:老撾萬榮一對情侶失蹤茵典,失蹤者是張志新(化名)和其女友劉穎湘换,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體统阿,經(jīng)...
    沈念sama閱讀 45,608評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡枚尼,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,814評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了砂吞。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,926評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡崎溃,死狀恐怖蜻直,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤概而,帶...
    沈念sama閱讀 35,644評論 5 346
  • 正文 年R本政府宣布呼巷,位于F島的核電站,受9級特大地震影響赎瑰,放射性物質(zhì)發(fā)生泄漏王悍。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,249評論 3 329
  • 文/蒙蒙 一餐曼、第九天 我趴在偏房一處隱蔽的房頂上張望压储。 院中可真熱鬧,春花似錦源譬、人聲如沸集惋。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,866評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽刮刑。三九已至,卻和暖如春养渴,著一層夾襖步出監(jiān)牢的瞬間雷绢,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,991評論 1 269
  • 我被黑心中介騙來泰國打工理卑, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留翘紊,地道東北人。 一個月前我還...
    沈念sama閱讀 48,063評論 3 370
  • 正文 我出身青樓傻工,卻偏偏與公主長得像霞溪,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子中捆,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,871評論 2 354

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