码迷,mamicode.com
首页 > 编程语言 > 详细

Java 8 Lambda表达式

时间:2016-01-01 12:50:42      阅读:153      评论:0      收藏:0      [点我收藏+]

标签:

Java 8中Lambda表达式就是一个函数接口,也就是只有一个抽象方法的接口。

Java中,传递一个行为是通过传递一个代表某种行为的对象来实现,比如,需要给某个按钮注册一个事件监听:

button.addActionListener(new ActionListener() {
    @Override
    public void actionPerformed(ActionEvent e) {
        System.out.println("button clicked");
    }
});

通过匿名内部类传递了一个actionPerformed的行为。不过,这种传递行为的方式不得不加上一些冗繁的样板代码,从而显得不够简便。

在Java 8中可以这样写:

button.addActionListener(event -> System.out.println("button clicked"));

其实,就是开头说的那样,Lamdba表达式的类型就是一个函数接口,只是在Java 8中,编译器可以根据Lambda表达式所在的上下文推断出来所要传递行为的各种信息。

在JDK中提供了一组核心的函数接口,可以使用这些函数接口传递行为。

Lambda表达式是一个匿名方法,将行为像数据一样进行传递。

Java 8 Lambda表达式

标签:

原文地址:http://www.cnblogs.com/sodo/p/5093143.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!