真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Java中Lambda函數(shù)的語法結(jié)構(gòu)

今天小編給大家分享的是Java中Lambda函數(shù)語法結(jié)構(gòu)的詳細(xì)介紹,相信大部分人都不太了解Lambda函數(shù)的語法結(jié)構(gòu),閱讀完整文相信大家對(duì)Lambda函數(shù)的語法結(jié)構(gòu)有了一定的認(rèn)識(shí)。

創(chuàng)新互聯(lián)公司堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都做網(wǎng)站、網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的容城網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

Java中Lambda函數(shù)的語法結(jié)構(gòu)


1、Lambda的函數(shù)的語法結(jié)構(gòu):

 

(variable)->action
 

2、語法結(jié)構(gòu)成分解析:

 

(1)variable:方法的變量名稱,可以有多個(gè)變量,如果只有一個(gè)變量,可以將小括號(hào)省略。
 

(2)action:是方法體,是自己寫的代碼邏輯的部分??梢允且恍写a或者多行代碼,如果只有一行代碼,可以不要花括號(hào),如果是多行代碼,需要用花括號(hào)括起來。

 

(3)-> :這個(gè)符號(hào)用于將變量和方法體分割開來。
 

(4)代碼示例:

 

public class Demo1 {
 

//沒有參數(shù)的運(yùn)算
 

interface NoParamOperation {
 

double operation();
 

}
 

//一個(gè)參數(shù)的運(yùn)算
 

interface SingleParamOperation {
 

int operation(int a);
 

}
 

//兩個(gè)參數(shù)的運(yùn)算
 

interface MathOperation {
 

double operation(double a, double b);
 

}
 

public static void main(String[] args) {
 

//======幾種Lambda表達(dá)式的寫法=============
 

//得到PI值(沒有參數(shù),直接返回)
 

NoParamOperation pi = () -> Math.PI;
 

//得到自然常數(shù) (沒有參數(shù),直接返回,如果有花括號(hào),要寫上顯式的加上return)
 

NoParamOperation e = () -> {
 

return Math.E;
 

};
 

//求平方(如果參數(shù)是一個(gè),可以省略小括號(hào))
 

SingleParamOperation square = a -> a * a;
 

//求立方(可以指定參數(shù)的類型,如果沒有編譯器會(huì)自動(dòng)推算)
 

SingleParamOperation cubic = (int a) -> a * a * a;
 

//加法(如果多個(gè)參數(shù),就必須添加上小括號(hào))
 

MathOperation add = (double a, double b) -> a + b;
 

//減法(多個(gè)參數(shù),也可以不指定參數(shù)的數(shù)據(jù)類型)
 

MathOperation sub = (a, b) -> a - b;
 

//乘法(一行代碼,函數(shù)體上也可以寫上花括號(hào))
 

MathOperation mult = (double a, double b) -> {
 

return a * b;
 

};
 

//除法(如果函數(shù)體有多行,就必須有花括號(hào))
 

MathOperation div = (a, b) -> {
 

if (b != 0) {
 

return a / b;
 

} else {
 

return 0;
 

}
 

};
 

System.out.println("PI的值" + pi.operation());
 

System.out.println("自然常數(shù)E的值:" + e.operation());
 

System.out.println("10的平方:" + square.operation(10));
 

System.out.println("10的立方:" + cubic.operation(10));
 

System.out.println("20+10:" + add.operation(20, 10));
 

System.out.println("20-10:" + sub.operation(20, 10));
 

System.out.println("20*10:" + mult.operation(20, 10));
 

System.out.println("20/10:" + div.operation(20, 10));
 

}
 

}

 

3、Lambda函數(shù)的簡(jiǎn)化表示:

方法引用是Lambda表達(dá)式的一種簡(jiǎn)寫,格式為:ObjectRef::methodName。有三種方法引用類型,分別是靜態(tài)方法引用、實(shí)例方法引用、構(gòu)造方法引用。

(1)ObjectRef可以是類名、實(shí)例名。

(2):: 符號(hào)是方法引用符號(hào)。

(3)#methodName 是引用的方法名。

 

如果你能讀到這里,恭喜你已經(jīng)對(duì)Lambda函數(shù)的語法結(jié)構(gòu)有了從實(shí)踐層面最深刻的體會(huì)了。如果想閱讀更多相關(guān)內(nèi)容的文章,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!


網(wǎng)站題目:Java中Lambda函數(shù)的語法結(jié)構(gòu)
轉(zhuǎn)載源于:http://weahome.cn/article/ggihsi.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部