Functional Java

Java Lambda入门学习

三世轮回 提交于 2019-12-01 10:30:33
感觉Lambda表达式写起来确实很简洁,今天就简单看了一下Lambda表达式。在Java 8,一个重要的变更是引入 Lambda表达式 ( lambda expression ),这听起来似乎很牛,有种我虽然不知道Lambda表达式是什么,但我仍然觉得很厉害的感觉。具体到语言层面上Lambda表达式不过是一种新的语法而已,下面就一起敲开Java函数式编程的大门。 Lambda表达式 到底什么是 Lambda 表达式、什么是函数式编程。先来看一下Java 8新的语法特性带来的便利之处,相信你会受益匪浅。 不用Lambda表达式新起一个线程,如下: new Thread(new Runnable() { @Override public void run() { System.out.println("thread second run test"); } }).start(); 用 Lambda 表达式就由可以这样写: new Thread( () -> System.out.println("Thread first run()") ).start(); 可以看出,匿名类消失了。可见, lambda expression 一个常见的用法是取代(某些)匿名内部类 ,但Lambda表达式的作用不限于此。 lambda expression表达式的原理 Lambda表达式可以包含多行代码