java8新特性七-Date Time API
摘要:简介 Java 8通过发布新的Date-Time API (JSR 310)来进一步加强对日期与时间的处理。 在旧版的 Java 中,日期时间 API 存在诸多问题,其中有: 非线程安全 − java.util.Date 是非线程安全的,所有的日期类都是可变的,这是Java日期类最大的问题之一。 设
阅读全文
java8新特性六-Optional 类
摘要:简介 Optional 类是一个可以为null的容器对象。如果值存在则isPresent()方法会返回true,调用get()方法会返回该对象。 Optional 是个容器:它可以保存类型T的值,或者仅仅保存null。Optional提供很多有用的方法,这样我们就不用显式进行空值检测。 Option
阅读全文
java8新特性五-Stream
摘要:引言 继上次学习过Java8中的非常重要的Lambda表达式之后,接下来就要学习另一个也比较重要的知识啦,也就如标题所示:Stream,而它的学习是完全依赖于之前学习的Lambda表达式。 Java 8 API添加了一个新的抽象称为流Stream,可以让你以一种声明的方式处理数据。 Stream 使
阅读全文
java8新特性四-默认方法
摘要:简介 Java 8 新增了接口的默认方法。 简单说,默认方法就是接口可以有实现方法,而且不需要实现类去实现其方法。 我们只需在方法名前面加个 default 关键字即可实现默认方法。 为什么要有这个特性? 首先,之前的接口是个双刃剑,好处是面向抽象而不是面向具体编程,缺陷是,当需要修改接口时候,需要
阅读全文
java8新特性三-函数式接口
摘要:简介 函数式接口(Functional Interface)就是一个有且仅有一个抽象方法,但是可以有多个非抽象方法的接口。 函数式接口可以被隐式转换为 lambda 表达式。 JDK 1.8 新增加的函数接口, java.util.function(该包下新增了许多函数式接口,基本满足常用功能) 案
阅读全文
java8新特性二-方法引用
摘要:Java 8 方法引用 引言 在学习lambda表达式之后,我们通常使用lambda表达式来创建匿名方法。然而,有时候我们仅仅是调用了一个已存在的方法。如下: Arrays.sort(stringsArray,(s1,s2)->s1.compareToIgnoreCase(s2)); 在Java8中
阅读全文
java8新特性一-lambda
摘要:前言 Java 8 (又称为 jdk 1.8) 是 Java 语言开发的一个主要版本。 Oracle 公司于 2014 年 3 月 18 日发布 Java 8 ,它支持函数式编程,新的 JavaScript 引擎,新的日期 API,新的Stream API 等。 简介 Java8 新增了非常多的特性
阅读全文