Java中Lambda函数的语法结构-创新互联
今天小编给大家分享的是Java中Lambda函数语法结构的详细介绍,相信大部分人都不太了解Lambda函数的语法结构,阅读完整文相信大家对Lambda函数的语法结构有了一定的认识。
10年积累的成都网站建设、成都网站制作经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先做网站设计后付款的网站建设流程,更有邵武免费网站建设让你可以放心的选择与我们合作。
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函数的语法结构有了从实践层面最深刻的体会了。如果想阅读更多相关内容的文章,欢迎关注创新互联成都网站设计公司行业资讯频道!
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
文章名称:Java中Lambda函数的语法结构-创新互联
转载源于:http://ybzwz.com/article/dgcoig.html