Lambda表达式简介

Lambda 表达式是 JDK8 的一个新特性,也被称为闭包,Lambda表达式允许把函数作为一个方法的参数,即行为参数化,函数作为参数传递进方法中。

Lambda表达式可以取代大部分的匿名内部类,写出更优雅的 Java 代码,尤其在集合的遍历和其他集合操作中,可以极大地优化代码结构。

Lambda表达式的作用

Java 8 引入的 Lambda表达式的主要作用就是简化代码,写出更优雅的代码。

怎么一个简化优雅呢,举一Lambda语法创建线程和匿名内部类创建线程的例子,就非常清楚了。

1.匿名类创建线程

// JDK7匿名内部类写法new Thread(new Runnable() {//接口名        @Override        public void run() {//方法名            System.out.println("mikechen");        }    });

2.Lambda表达式创建线程

// JDK8 Lambda来创建线程new Thread(() -> System.out.println("mikechen"));

上述代码跟匿名内部类的作用是一样的,但比匿名内部类更进一步,这里连接口名和函数名都一同省掉了,Lambda表达式可以取代匿名内部类,写出更优雅的代码。

Lambda表达式的语法

lambda 表达式的语法格式如下:

1.无参数

Lambda体只有一条语句:

示例: