中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java中Lambda函數的語法結構

發布時間:2020-06-05 21:22:07 來源:億速云 閱讀:400 作者:Leah 欄目:編程語言

今天小編給大家分享的是Java中Lambda函數語法結構的詳細介紹,相信大部分人都不太了解Lambda函數的語法結構,閱讀完整文相信大家對Lambda函數的語法結構有了一定的認識。

Java中Lambda函數的語法結構


1、Lambda的函數的語法結構:

 

(variable)->action
  

2、語法結構成分解析:

 

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

(2)action:是方法體,是自己寫的代碼邏輯的部分。可以是一行代碼或者多行代碼,如果只有一行代碼,可以不要花括號,如果是多行代碼,需要用花括號括起來。

 

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

(4)代碼示例:

 

public class Demo1 {
  

//沒有參數的運算
  

interface NoParamOperation {
  

double operation();
  

}
  

//一個參數的運算
  

interface SingleParamOperation {
  

int operation(int a);
  

}
  

//兩個參數的運算
  

interface MathOperation {
  

double operation(double a, double b);
  

}
  

public static void main(String[] args) {
  

//======幾種Lambda表達式的寫法=============
  

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

NoParamOperation pi = () -> Math.PI;
  

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

NoParamOperation e = () -> {
  

return Math.E;
  

};
  

//求平方(如果參數是一個,可以省略小括號)
  

SingleParamOperation square = a -> a * a;
  

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

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

//加法(如果多個參數,就必須添加上小括號)
  

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

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

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

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

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

return a * b;
  

};
  

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

MathOperation div = (a, b) -> {
  

if (b != 0) {
  

return a / b;
  

} else {
  

return 0;
  

}
  

};
  

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

System.out.println("自然常數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函數的簡化表示:
  

方法引用是Lambda表達式的一種簡寫,格式為:ObjectRef::methodName。有三種方法引用類型,分別是靜態方法引用、實例方法引用、構造方法引用。
  

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

2):: 符號是方法引用符號。
  

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

 

如果你能讀到這里,恭喜你已經對Lambda函數的語法結構有了從實踐層面最深刻的體會了。如果想閱讀更多相關內容的文章,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

盘山县| 钦州市| 革吉县| 滨州市| 历史| 衡山县| 海丰县| 即墨市| 皮山县| 和顺县| 工布江达县| 平舆县| 洞头县| 武胜县| 鸡西市| 驻马店市| 兴海县| 开原市| 顺昌县| 余庆县| 朝阳区| 宝山区| 阳东县| 惠东县| 台山市| 丰都县| 浦北县| 蒲江县| 兴宁市| 当阳市| 临江市| 高邮市| 洞头县| 龙南县| 娄底市| 利川市| 额济纳旗| 寿阳县| 青铜峡市| 合阳县| 鄱阳县|