java lambda使用_java lambda表达式用法总结[亲测有效]

java lambda使用_java lambda表达式用法总结[亲测有效]这篇文章主要介绍了javalamda表达式用法总结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下1、什么是函数式编程(百度百科上的解释)2、为什么要使用函数式编程(有什么好处)1、代码简洁,减少代码量2、接近自然语言,容易理解传统实现分组Liststudents;Map>maps=Maps.newHashMap();for(Stu…

大家好,欢迎来到IT知识分享网。

这篇文章主要介绍了java lamda表达式用法总结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

1、什么是函数式编程(百度百科上的解释)

2398766a828739e3c0e2bc1df5450504.png

2、为什么要使用函数式编程(有什么好处)

1、代码简洁,减少代码量

2、接近自然语言,容易理解

传统实现分组

List students;

Map> maps = Maps.newHashMap();

for(Student student : students){

List studentList = students.getOrDefault(student.getSex(), Lists.newArrayList());

studentList.add(student);

maps.put(student.getSex(), studentList);

}

使用lambda表达式

Map> maps = student.stream.collect(Collerctor.groupBy(Student :: getSex));

3、很好实现并发处理

3、什么是lambda表达式

1、方法体为表达式,使用return将表达结果返回回去

(paramates)-> expression

(a, b) -> return a + b

2、方法体为代码块,必须用{}包含起来,且需要使用return返回值,但是如果代码块返回的是void,那么不需要返回值

(parameter) -> {statements;}

(int a) -> (System.out.println(a))

(int a) -> (return a*a);

4、lambda的底层实现

BinaryOperator binaryOperator = (int a, int b) -> {return a + b;};

if(binaryOperator instanceof BinaryOperator){System.out.println(binaryOperator.getClass());}

int sum = binaryOperator.applyAsInt(2,3);

System.out.println(sum);

可以看出来binaryOperator其实是继承BinaryOperator的一个匿名内部类

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/25100.html

(0)
上一篇 2023-08-03 12:00
下一篇 2023-08-03 20:33

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信