当前位置: 首页 > 编程笔记 >

java lambda表达式用法总结

薛钧
2023-03-14
本文向大家介绍java lambda表达式用法总结,包括了java lambda表达式用法总结的使用技巧和注意事项,需要的朋友参考一下

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

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

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

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

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

传统实现分组

List<Student> students;
Map<String,List<Student>> maps = Maps.newHashMap();
for(Student student : students){
  List<Student> studentList =  students.getOrDefault(student.getSex(), Lists.newArrayList());
  studentList.add(student);
  maps.put(student.getSex(), studentList);
}

使用lambda表达式

Map<String, List<Student>> 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的一个匿名内部类

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

 类似资料:
  • 我有下面的类和对象的ArrayList: 我想要的是从我的列表中得到一个字符串和整数地图,其中包含门票中的目的地和我列表中每个目的地的出现次数。我想它会这样开始,但是我不知道如何继续:

  • 本文向大家介绍正则表达式常用用法汇总,包括了正则表达式常用用法汇总的使用技巧和注意事项,需要的朋友参考一下 在没看正文之前,先给大家介绍下正则表达式基本概念: 正则表达式,又称正规表示法、常规表示法。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则。在很多文本编辑器里,正

  • 本文向大家介绍javascript正则表达式定义(语法)总结,包括了javascript正则表达式定义(语法)总结的使用技巧和注意事项,需要的朋友参考一下 本文讲述了javascript正则表达式定义(语法)。分享给大家供大家参考,具体如下: 正则表达式的2种定义方法:一种是直接调用RegExp(),第二种是直接用字面量来定义,即var re = /正则规则/; 2种定义方法本质都是调用RegEx

  • 问题内容: lambda表达式中使用的变量应该是final或有效的final 当我尝试使用它时会显示此错误。 问题答案: 可变装置,它可以被实例化一次。在Java中,你不能在lambda以及匿名内部类中使用非最终变量。 你可以使用旧的for-each循环来重构代码: 即使我对这段代码有些不了解: 你调用;而不使用其返回值 使用分配,;你不会修改原始传递的内容,并且你不会在此方法中使用它 你总是返回

  • 本文向大家介绍Python中正则表达式的用法实例汇总,包括了Python中正则表达式的用法实例汇总的使用技巧和注意事项,需要的朋友参考一下 正则表达式是Python程序设计中非常实用的功能,本文就常用的正则表达式做一汇总,供大家参考之用。具体如下: 一、字符串替换 1.替换所有匹配的子串 用newstring替换subject中所有与正则表达式regex匹配的子串 2.替换所有匹配的子串(使用正则

  • 表达式会通过parser生成抽象语法树。Native提供了解析引擎可以解析这个语法树,并计算出结果。 目前parser支持两大类功能: 基本四则运算、逻辑运算符、比较运算符 函数(如大部分的math函数、动画插值器函数、一些工具函数等) 下面是具体支持的情况: 运算符 + >= - <= * == - === () != % !== ** && > || < ! ?: Math函数 sin sqr