温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Java中Lambda函数的语法结构

发布时间:2020-06-05 21:22:07 来源:亿速云 阅读:381 作者: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