简而言之,Java8的新功能是Java1.0发布18年以来Java发生的最大变化。
所以你现有的Java代码是可以工作的,但是新功能提供了强大的新语汇和新设计模式,
它可以帮助你编写更清晰、更简洁的代码。
就像遇到所有新功能一样,一开始你可能会想:“你为什么要改变我的语言?”
但是稍微练习一下,你会发现你用新功能写出了一个更短更清晰的代码,只需要预期的一半时间。
这时,你会意识到你永远无法回到“旧Java”。
本书会帮助你跨过“原理听起来不错,但还是有点儿新,不太适应”的门槛,从而熟练地进行编程。
“也许吧,”你可能会想,“可是Lambda、函数式编程,这些不是那些留着胡子、穿着凉鞋的学究们在象牙塔里面琢磨的东西吗?”
或许是的,但Java 8中加入的新想法的分量刚刚好,它们带来的好处也可以被普通的Java程序员所理解。
本书会从普通程序员的角度来叙述,偶尔谈谈“这是怎么来的”。
“Lambda,听起来跟天书一样!”是的,也许是这样,但它是一个很好的想法,让你可以编写简明的Java程序。
许多人都熟悉事件处理器和回调函数,即注册一个对象,它包含会在事件发生时使用的一个方法。
Lambda使人更容易在Java中广泛应用这种思想。简单来说,Lambda和它的朋友“方法引用”让你在做其他事情的过程中,
可以简明地将代码或方法作为参数传递进去执行。在本书中,你会看到这种思想出现得比预想的还要频繁:从加入作比较的代码来简单地参数化一个排序方法,
到利用新的Stream API在一组数据上表达复杂的查询指令。
“流( stream)是什么?”这是Java 8的一个新功能。它们的特点和集合( collection)差不多,但有几个明显的优点,让我们可以使用新的编程风格。
首先,如果你使用过SQL等数据库查询语言,就会发现用几行代码写出的查询语句要是换成Java要写好长。
Java 8的流支持这种简明的数据库查询式编程——但用的是Java语法,而无需了解数据库!其次,
流被设计成无需同时将所有的数据调人内存(甚至根本无需计算),这样就可以处理无法装入计算机内存的流数据了。
但Java 8可以对流做一些集合所不能的优化操作,例如,它可以将对同一个流的若干操作组合起来,从而只遍历一次数据,而不是花很大代价去多次遍历它。
更妙的是,Java可以自动将流操作并行化(集合可不行)。
下面是《Java8实战》电子书目录:
教材内容部分展示:
| Java8实战 百度网盘 课程大小:0.00字节 |
提取码:**** (购买后可见) |
下载 |