详解Java8特性之Lambda表达式

xiaoxiao2021-02-28  111

#前言 Lambda表达式是Java8的一个特性,而Java8是2014发布的,那时候我刚上大学,还没认识Java呢。过了很长一段时间才学习了Lambda表达式,但是一直没怎么用过,已经忘了差不多了,所以现在特地复习一下。

学一个东西我们得知道它是什么,有什么用,怎么用。

#是什么 从不同角度上来说,Lambda表达式是一个语法糖,也可以说是匿名函数。

##语法糖 何谓语法糖,我的理解是语法糖就是方便程序员开发的一个功能的简化语法。举个栗子,在Java5中出现的增强for循环:foreach,我们一般是这么使用的

List<Integer> nums = new ArrayList<>(); for (Integer n : nums) { System.out.println(n); }

那其实反编译以后是下面这样子的

List nums = new ArrayList(); Integer n; for(Iterator iterator = nums.iterator(); iterator.hasNext(); System.out.println(n)) n = (Integer)iterator.next();

如果让我们写起来麻烦吧,我们用foreach语法完成了迭代器迭代的功能,但却写了更少的代码,这就是语法糖的作用。至于其中还有类型擦除,想要了解的可以去这里看看详解J

转载请注明原文地址: https://www.6miu.com/read-17677.html

最新回复(0)