2017-02-06 高悦翔
本文是「Java 8 函数式编程」第三章的读书笔记,章名为流。本章主要介绍了外部迭代与内部迭代以及常用的高阶函数。 外部迭代与内部迭代 外部迭代 过去我们要对一个List进行迭代时,往往会采用如下方式: java int count = 0; for (Artist artist : artists) { if (artist.isFrom("London")) { count++; } } 继续阅读 »
2017-02-05 高悦翔
本文是「Java 8 函数式编程」第二章的读书笔记。 Lambda引入的变化 Lambda表达式,是一种紧凑的、传递行为的方式,从编程思想上来讲,就是代码即数据。 过去的Java中,存在大量的匿名内部类的使用,会新建一个匿名内部类传入调用的方法中。这种传统的方式,会造成冗余的、不易阅读的代码。 继续阅读 »
2017-02-10 高悦翔
本章是该书的第五章, 主要讲了方法引用和收集器 方法引用 形如: java artist -> artist.getName() (String arg) -> arg.length() 这样的表达式, 可以简写为: 继续阅读 »
2016-10-18 Eric Wang
在升级JDK至1.8之后,使用Maven-javadoc-plugin插件打包报错,*[ERROR] Failed to execute goal org.apache.maven.plugins:maven-javadoc-plugin:2.10.4:jar (attach-javadocs) on project *详细信息如下 [ERROR] Failed to execute goal org.apache.maven.plugins:maven-javadoc-plugin:2.10.4:jar (attach-javadocs) on project StatisticsReport: MavenReportExcep 继续阅读 »
2017-02-08 高悦翔
本书第四章的读书笔记, 本章主要阐述: 如何使用Lambda表达式. 基本类型 考虑到装箱类型过于占用内存, JDK提供了针对基本类型的操作, 以达到优化的效果, 如mapToLong方法. 对基本类型做特殊处理的方法在命名上有明确规范: 继续阅读 »
2017-02-20 高悦翔
本书第六章的读书笔记,也是我这个系列的最后一篇读书笔记。后面7、8、9章分别讲的“测试、调试与重构”、“设计和架构的原则”以及“使用Lambda表达式编写并发程序”,因为笔记不好整理,就不写了,感兴趣的同学自己买书来看吧。 并行化流操作 继续阅读 »
2015-09-15 biezhi
在这篇文章中我将向你演示如何使用Java8中的foreach操作List和Map 1. Foreach操作Map 1.1 正常方式遍历Map ```java Map items = new HashMap<>(); items.put("A", 10); items.put("B", 20); items.put("C", 30); items.put("D", 40); items.put("E", 50); items.put("F", 60); for (Map.Entry entry : items.entrySet()) { System.out.println("Item : " + entry.getK 继续阅读 »
2015-05-07 Eric Wang
LTP
JDK:java version "1.8.0_31" Java(TM) SE Runtime Environment (build 1.8.0_31-b13) Java HotSpot(TM) 64-Bit Server VM (build 25.31-b07, mixed mode) OS:win7 64bit cmake:V2.8.12/V3.2.2 LTP:V3.2.0 LTP4J:V1.0 Microsoft VS C++:V2010 编译LTP4J.jar 下载Ant ltp4j的源码使用ant进行编译,首先需要下载ant,点我下载 配置Ant环境变量 我的电脑-->属性-->高级系统设置-->环境变量 新建A 继续阅读 »
2015-04-22 Eric Wang
JDK:java version "1.8.0_31" Java(TM) SE Runtime Environment (build 1.8.0_31-b13) Java HotSpot(TM) 64-Bit Server VM (build 25.31-b07, mixed mode) OS:win7 64bit 在日常开发中,经常需要在项目中加载各种资源,包括图片、文本、声音等资源,在本地项目中运行代码可以正确地加载资源,但是当把本地项目打包成Jar包并发布到web项目中之后,即便将各种资源文件一并打包,依然会出现无法正确加载资源的问题。这说明,在你希望打包的项目中加载资源的方式是错误的。那么你或许会问,为什么在单独的项目中 继续阅读 »
2016-05-03 Piasy
从最初 OkBuck 发布时宣称 BUCK 与 RetroLambda 不兼容只能忍痛割爱(lambda),到 BUCK 维护者之一联系我声称 BUCK 可以编译 Java 8 结果遇到编译错误未解,到昨晚终于成功让 BUCK 与 RetroLambda 出双入对,时隔大半年终于臻至完美,怎一个爽字了得!如果你还不了解什么是 BUCK,可以参考我的两篇文章 OkBuck, underneath the hood{:target="_blank"},手把手OkBuck教程:应用到AndroidTDDBootStrap项目(续){:target="_blank"},以及 BUCK 官方文档{:target="_blank"}。 继续阅读 »