查字典图书网
当前位置: 查字典 > 图书网 > 编程 > Java 8函数式编程 > 试读

Java 8函数式编程[试读]

2.1 第一个Lambda表达式

Java 8 的最大变化是引入了Lambda 表达式——一种紧凑的、传递行为的方式。它也是本书后续章节所述内容的基础,因此,接下来就了解一下什么是Lambda 表达式。 2.1 第一个Lambda表达式 Swing 是一个与平台无关的Java 类库,用来编写图形用户界面(GUI)。该类库有一个常... 查看全部[ 2.1 第一个Lambda表达式 ]

2.2 如何辨别Lambda表达式

Lambda 表达式除了基本的形式之外,还有几种变体,如例2-3 所示。 例2-3 编写Lambda 表达式的不同形式 Runnable noArguments = () -> System.out.println("Hello World");  ActionLi... 查看全部[ 2.2 如何辨别Lambda表达式 ]

2.3 引用值,而不是变量

如果你曾使用过匿名内部类,也许遇到过这样的情况:需要引用它所在方法里的变量。这时,需要将变量声明为final,如例2-5 所示。将变量声明为final,意味着不能为其重复赋值。同时也意味着在使用final 变量时,实际上是在使用赋给该变量的一个特定的值。 例2-5 匿名内部类中使用final 局部... 查看全部[ 2.3 引用值,而不是变量 ]

2.4 函数接口

函数接口是只有一个抽象方法的接口,用作Lambda 表达式的类型。 在Java 里,所有方法参数都有固定的类型。假设将数字3 作为参数传给一个方法,则参数的类型是int。那么,Lambda 表达式的类型又是什么呢? 使用只有一个方法的接口来表示某特定方法并反复使用,是很早就有的习惯。使用Swin... 查看全部[ 2.4 函数接口 ]

2.5 类型推断

某些情况下,用户需要手动指明类型,建议大家根据自己或项目组的习惯,采用让代码最便于阅读的方法。有时省略类型信息可以减少干扰,更易弄清状况;而有时却需要类型信息帮助理解代码。经验证发现,一开始类型信息是有用的,但随后可以只在真正需要时才加上类型信息。下面将介绍一些简单的规则,来帮助确认是否需要手动声明... 查看全部[ 2.5 类型推断 ]

2.6 要点回顾

Lambda 表达式是• 一个匿名方法,将行为像数据一样进行传递。 • Lambda表达式的常见结构:BinaryOperator<Integer> add = (x, y) → x + y。 • 函数接口指仅具有单个抽象方法的接口,用来表示Lambda表达式的类型。... 查看全部[ 2.6 要点回顾 ]

2.7 练习

每章最后都附有一组练习,帮助读者实践并巩固本章的知识和新概念。练习答案可在GitHub(https://github.com/RichardWarburton/java-8-Lambdas-exercises)上本书所对应的代码仓库中找到。 1. 请看例2-15 中的Function 函数接口并回... 查看全部[ 2.7 练习 ]