java8
will的猜想
这个作者很懒,什么都没留下…
展开
-
java函数式编程之Supplier
描述:Supplier< T>接口没有入参,返回一个T类型的对象,类似工厂方法。源码:public interface Supplier<T> { /** * Gets a result. * * @return a result */ T get();}测试代码:@Testpublic void test(){...转载 2017-11-27 10:27:17 · 1110 阅读 · 0 评论 -
JAVA8-用lamda表达式和增强版Comparator进行排序
以前的排序一般对象实现Comparable或者Comparator接口,经常是通过匿名类类实现。 可以参见以前的博文 Java 中 Comparable 和 Comparator 比较 现在看看使用lamda表达式和java8中增强的Comparator接口进行排序。先定义一个简单的实体类:class Human { private String name; private int...转载 2018-01-24 19:24:42 · 562 阅读 · 0 评论 -
java8之localDateTime, ZoneId, Instant使用
import java.time.*;import java.time.format.DateTimeFormatter;import java.time.temporal.ChronoField;import java.time.temporal.TemporalAdjusters;import java.util.Date;public class Main { publi原创 2018-01-30 19:23:12 · 26905 阅读 · 0 评论 -
java8之collector
在前一节中,我们已经了解到StreamAPI能够帮助我们用更直观简洁的方式来处理集合。现在我们来看一下collect方法,它是一个能够把stream管道中的结果集装进一个List集合的终极操作。 collect是一个把stream规约成一个value的规约操作,这里的value可以是一个Collection、Map或者一个value对象。在下面这几种情况下,可以使用collect操作。把s转载 2018-01-03 17:24:16 · 1039 阅读 · 0 评论 -
Java8新的异步编程方式 CompletableFuture
一. FutureJDK 5引入了Future模式。Future接口是Java多线程Future模式的实现,在java.util.concurrent包中,可以来进行异步计算。Future模式是多线程设计常用的一种设计模式。Future模式可以理解成:我有一个任务,提交给了Future,Future替我完成这个任务。期间我自己可以去做任何想做的事情。一段时间之后,我就便可以从Future那...转载 2018-01-03 16:36:08 · 42711 阅读 · 4 评论 -
JDK8新特性Optional类
Optional不是对null关键字的一种替代,而是对于null判定提供了一种更加优雅的实现。NullPointException可以说是所有java程序员都遇到过的一个异常,虽然java从设计之初就力图让程序员脱离指针的苦海,但是指针确实是实际存在的,而java设计者也只能是让指针在java语言中变得更加简单、易用,而不能完全的将其剔除,所以才有了我们日常所见到的关键字null。空指针异常是一个...转载 2017-11-28 14:29:19 · 1316 阅读 · 0 评论 -
java8新特性
default拓展方法java8为接口声明添加非抽象方法的实现,也成为拓展方法。public interface Formula { void doSomething(); default void before() { System.out.println("我是拓展方法"); }}public class FormulaServi转载 2017-11-27 15:51:27 · 362 阅读 · 0 评论 -
Java8简明指南
Java8简明指南Java8简明指南欢迎来到Java8简明指南。本教程将一步一步指导你通过所有新语言特性。由短而简单的代码示例,带你了解如何使用默认接口方法,lambda表达式,方法引用和可重复注解。本文的最后你会熟悉最新的API的变化如Stream,Fcuntional,Map API扩展和新的日期API。接口的默认方法在Java8中,利用default关键字使我们能够添加非抽象方法实现的接口。...转载 2017-11-27 15:50:18 · 268 阅读 · 1 评论 -
java泛型的通配符
泛型中使用通配符有两种形式:子类型限定和超类型限定。(1)子类型限定下面的代码定义了一个Pair类,以及Employee,Manager和President类。[java] view plain copypublic class Pair { private T first; private T s转载 2017-11-27 15:08:56 · 481 阅读 · 0 评论 -
Java 8之方法引用(Method References)
Java 8中方法也是一种对象,可以By名字来引用。不过方法引用的唯一用途是支持Lambda的简写,使用方法名称来表示Lambda。不能通过方法引用来获得诸如方法签名的相关信息。方法引用的分类方法引用分为4类,常用的是前两种。方法引用也受到访问控制权限的限制,可以通过在引用位置是否能够调用被引用方法来判断。具体分类信息如下:引用静态方法 ContainingCl转载 2017-11-27 10:28:32 · 609 阅读 · 0 评论 -
Java8新特性之日期处理
简介伴随 lambda表达式、streams 以及一系列小优化,Java 8 推出了全新的日期时间API。Java处理日期、日历和时间的不足之处:将 java.util.Date 设定为可变类型,以及 SimpleDateFormat 的非线程安全使其应用非常受限。然后就在 java8 上面增加新的特性。全新API的众多好处之一就是,明确了日期时间概念,例如:瞬时(instant)、 长短(dur...转载 2018-03-28 13:34:33 · 1273 阅读 · 0 评论