手记

JAVA8学习笔记的链接---

http://www.importnew.com/11908.html#intro
函数式接口
理解Functional Interface(函数式接口,以下简称FI)是学习Java8 Lambda表达式的关键所在,所以放在最开始讨论。FI的定义其实很简单:任何接口,如果只包含唯一一个抽象方法,那么它就是一个FI。为了让编译器帮助我们确保一个接口满足FI的要求(也就是说有且仅有一个抽象方法),Java8提供了@FunctionalInterface注解。举个简单的例子,Runnable接口就是一个FI,下面是它的源代码:
[java] view plain copy
@FunctionalInterface
public interface Runnable {
public abstract void run();
}
Lambda语法糖
为了能够方便、快捷、幽雅的创建出FI的实例,Java8提供了Lambda表达式这颗语法糖。下面我用一个例子来介绍Lambda语法。假设我们想对一个List<String>按字符串长度进行排序,那么在Java8之前,可以借助匿名内部类来实现:

0人推荐
随时随地看视频
慕课网APP

热门评论

3、Base64 编码

4、并行数组parallel

http://www.importnew.com/24300.html 这个写的好

http://www.importnew.com/20331.html  51CTO 我要自学所有的都值得看


Java8的新增类库

1、空值容器 Optional 类


2、Clock-->LocalDate、LocalTime-->LocalDateTime

Clock给定时区即可 获得当前时间

计算时间过程Duration  、Period

方法引用: 配合supplier引用构造函数 ::new

Java8.testFun( Java8::new );

static void testFun( Supplier<Java8> supplier){...}

Lambda表达式中引用:

Class:: static_method 

Class:: method 

Instance:: method 


查看全部评论