数智图书馆-无锡数智政务 本次搜索耗时 5.454 秒,为您找到 1062 个相关结果.
  • 2.4 函数接口

    2.4 函数接口 2.4 函数接口 函数接口是只有一个抽象方法的接口,用作Lambda表达式的类型。 在Java里,所有方法参数都有固定的类型。假设将数字3 作为参数传给一个方法,则参数的类型是int 。那么,Lambda表达式的类型又是什么呢? 使用只有一个方法的接口来表示某特定方法并反复使用,是很早就有的习惯。使用Swing编写过用户界面的人对...
  • 3.1 从外部迭代到内部迭代

    3.1 从外部迭代到内部迭代 3.1 从外部迭代到内部迭代 本章及本书其余部分的例子大多围绕1.3节介绍的案例展开。 Java程序员在使用集合类时,一个通用的模式是在集合上进行迭代,然后处理返回的每一个元素。比如要计算从伦敦来的艺术家的人数,通常代码会写成例3-1这样。 例3-1 使用for 循环计算来自伦敦的艺术家人数 int count...
  • 3.3 常用的流操作

    3.3 常用的流操作 3.3.1 collect(toList()) 3.3.2 map 3.3.3 filter 3.3.4 flatMap 3.3.5 max 和min 3.3.6 通用模式 3.3.7 reduce 3.3.8 整合操作 3.3 常用的流操作 为了更好地理解Stream API,掌握一些常用的Stre...
  • 3.6 高阶函数

    3.6 高阶函数 3.6 高阶函数 本章中不断出现被函数式编程程序员称为高阶函数 的操作。高阶函数是指接受另外一个函数作为参数,或返回一个函数的函数。高阶函数不难辨认:看函数签名就够了。如果函数的参数列表里包含函数接口,或该函数返回一个函数接口,那么该函数就是高阶函数。 map 是一个高阶函数,因为它的mapper 参数是一个函数。事实上,本章介绍的...
  • 第 4 章 类库

    第 4 章 类库 第 4 章 类库 前3章讨论了如何编写Lambda表达式,接下来将详细阐述另一个重要方面:如何使用Lambda表达式。即使不需要编写像Stream 这样重度使用函数式编程风格的类库,学会如何使用Lambda表达式也是非常重要的。即使一个最简单的应用,也可能会因为代码即数据的函数式编程风格而受益。 Java 8中的另一个变化是引入了默...
  • 4.5 二进制接口的兼容性

    4.5 二进制接口的兼容性 4.5 二进制接口的兼容性 如第3章开篇所言,Java 8中对API最大的改变在于集合类。虽然Java在持续演进,但它一直在保持着向后二进制兼容。具体来说,使用Java 1到Java 7编译的类库或应用,可以直接在Java 8上运行。 当然,错误也难免会时有发生,但和其他编程平台相比,二进制兼容性一直被视为Java的关键优...
  • 4.9 接口的静态方法

    4.9 接口的静态方法 4.9 接口的静态方法 前面已多次出现过Stream.of 方法的调用,接下来将对其进行详细介绍。Stream 是个接口,Stream.of 是接口的静态方法。这也是Java 8中添加的一个新的语言特性,旨在帮助编写类库的开发人员,但对于日常应用程序的开发人员也同样适用。 人们在编程过程中积累了这样一条经验,那就是一个包含很多...
  • 第 6 章 数据并行化

    第 6 章 数据并行化 第 6 章 数据并行化 前面多次提到,在Java 8中,编写并行化的程序很容易。这都多亏了第3章介绍的Lambda表达式和流,我们完全不必理会串行或并行,只要告诉程序该做什么就行了。这听起来和长久以来使用Java编程的方式并无区别,但告诉计算机做什么和怎么做是完全不同的。 从外部迭代到内部迭代的过渡(详见第3章),确实让编写简...
  • 第 7 章 测试、调试和重构

    第 7 章 测试、调试和重构 第 7 章 测试、调试和重构 重构、测试驱动开发(TDD)和持续集成(CI)越来越流行,如果我们需要将Lambda表达式应用于日常编程工作中,就得学会如何为它编写单元测试。 关于如何测试和调试计算机程序的书已经汗牛充栋,本章不打算再一一赘述。如果读者对如何正确地使用测试驱动开发(TDD)感兴趣,我极力推荐大家阅读Kent...
  • 7.1 重构候选项

    7.1 重构候选项 7.1.1 进进出出、摇摇晃晃 7.1.2 孤独的覆盖 7.1.3 同样的东西写两遍 7.1 重构候选项 使用Lambda表达式重构代码有个时髦的称呼:Lambda化 (读作lambda-fi-cation ,执行重构的程序员叫做lamb-di-fiers 或者有责任心的程序员 )。Java 8中的核心类库就曾经历过这样一场重...