编程语言
首页 > 编程语言> > [Java8] lamda表达式一览

[Java8] lamda表达式一览

作者:互联网

前言

不知道从什么时候开始. Java8开始刮起了一阵妖风. 那就是lamda表达式. 也叫函数式编程, 大概是和隔壁的Scala进行学习吧. 但是Java8也是甲骨文最后一个免费的版本. 大概率, 很多的中小型公司都会选择停留在这个版本. 虽然这个版本没有ZGC垃圾回收, 但是面对10G-100G左右内存规模的程序, 也应该够了.


初识lamda表达式

lamda表达式最大的特性就是简化了for循环的编写方式. 多说无益, 我们举个例子进行编写吧.

List<Integer> helloArrayList = new ArrayList<>();
for(String str : helloArratList){
	str = str+"a";
}
List<Integer> helloArrayList = new ArrayList<>();
// 注意lamda表达式中map处理完之后要使用collect收集. 并且赋值回去.
helloArrayList = helloArrayList.stream().map(str -> str+"a").collect(Collections.toList());

这样看起来是不是很简单? 好像也不是… 但是当多个算子聚合操作的时候, 你会感觉出来的. 特别其还有一些比较喜欢的Map转换器.


map() 支持表达式的三种写法

差点忘了这一部分. 我们初学者写的时候非常苦恼. 其中的表达式有三种变种. 我们需要熟悉他们:

map(a -> {
	a = a+1;
	int. b. = 2;
	a = a+b;
	return a;
})

Java8 lamda表达式算子介绍

在这里给出一些, 我在工作中使用比较多的算子.

其余不常用的算子

Reference

标签:map,lamda,a1,collect,算子,Java8,表达式
来源: https://blog.csdn.net/u010416101/article/details/120499437