
Java8
何小H
这个作者很懒,什么都没留下…
展开
-
一文带你学会Java8的时间API!
前言Java8之前日期/时间API存在的问题非线程安全 − java.util.Date 是非线程安全的,所有的日期类都是可变的,这是Java日期类最大的问题之一。设计很差 − Java的日期/时间类的定义并不一致,在java.util和java.sql的包中都有日期类,此外用于格式化和解析的类在java.text包中定义。java.util.Date同时包含日期和时间,而java.sql.Date仅包含日期,将其纳入java.sql包并不合理。另外这两个类都有相同的名字,这本身就是一个非常糟糕的设原创 2020-05-27 20:00:05 · 400 阅读 · 0 评论 -
如何优雅的消除代码里的NullPointerException!
NPE(NullPointerException)是我们代码工作中最常遇到的一个异常,非常的难受,如何优雅的处理它呢。本篇文章将详细介绍Optional类,以及如何用它消除代码中的null检查。Optional是为了防止NullPointerException,使代码更优雅。避免使用null检查作为Java开发人员,几乎所有人都遇到过NullPointerException异常,大多数人遇到NullPointerException异常时都会在异常出现的地方加上if代码块来判断值不为空,比如下面的代码.转载 2020-05-09 00:30:07 · 670 阅读 · 0 评论 -
Java8新特性(一) 之 Lambda表达式
Lambda表达式是什么Lambda表达式(lambda expression)是一个匿名函数,由数学中的λ演算而得名。在Java 8中可以把Lambda表达式理解为匿名函数,它没有名称,但是有参数列表、函数主体、返回类型等。Lambda表达式的语法如下:(parameters) -> { statements; }为什么要使用Lambda表达式?前面你也看到了,在Java中使用...原创 2020-05-07 23:50:07 · 240 阅读 · 0 评论 -
Java8新特性(三) 之 Stream API
Stream API本文继续介绍Java 8的另一个新特性——Stream API。Stream API是对Java中集合操作的增强,可以利用它进行各种过滤、排序、分组、聚合等操作。Stream API配合Lambda表达式可以加大的提高代码可读性和编码效率,Stream API也支持并行操作,我们不用再花费很多精力来编写容易出错的多线程代码了,Stream API已经替我们做好了,并且充分利...原创 2020-05-08 00:14:15 · 650 阅读 · 0 评论 -
Java8新特性(二) 之 函数式接口
函数式接口如果你的好奇心使你翻看Runnable接口源代码,你会发现该接口被一个@FunctionalInterface的注解修饰,这是Java 8中添加的新注解,用于表示 函数式接口。函数式接口又是什么鬼?在Java 8中,把那些仅有一个抽象方法的接口称为函数式接口。如果一个接口被@FunctionalInterface注解标注,表示这个接口被设计成函数式接口,只能有一个抽象方法,如果...原创 2020-05-07 23:51:14 · 1374 阅读 · 0 评论