![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java8
文章平均质量分 80
卓立~
现在一家电商做广告平台,Java后端后端开发
展开
-
Java8日期与时间
昨天在工作中,写了一个关于时间的工具类,其中一个函数的功能是判断当前时间是否为0点。本来想一天是86400秒,如果通过当前的unix时间与86400取余,且余数为0的话,那么肯定是0点了。所以我写了如下的代码:public class DateUtil { public Boolean is0Clock(Long unixTimeStamp) { return un...原创 2018-11-01 07:14:19 · 361 阅读 · 0 评论 -
Java中LocalDate和Date互转
上篇文章介绍了Java8和Java8之前的时间处理的相关类,但是在日常开发中难免会遇到Java8和之前的旧对象互转的需求。我整理了一下之前的内容,做了一个工具类,如下:public class DateUtils { /** * @Author: zhuoli * @Description: 判断unix当前unix时间是否为0点 * @param u...原创 2018-11-01 07:16:10 · 4604 阅读 · 0 评论 -
Java8 Stream reduce操作
Reduce,顾名思义为减少的意思,就是根据指定的计算模型将Stream中的值计算得到一个最终结果。在之前的一篇文章Java8函数式编程中简单介绍,Stream的count、min 和max方法底层都是依赖reduce实现的,本篇文章将简单介绍一下Java8 Stream reduce的几种基本用法。首先来看一下Reduce三种形式:S.N. 方法说明 1 Optional...原创 2018-11-03 14:35:20 · 8060 阅读 · 2 评论 -
Java8 Stream groupingBy对List进行分组
提到Group By,首先想到的往往是sql中的group by操作,对搜索结果进行分组。其实Java8 Streams API中的Collector也支持流中的数据进行分组和分区操作,本片文章讲简单介绍一下,如何使用groupingBy 和 partitioningBy来对流中的元素进行分组和分区。 groupingBy 首先看一下Java8之前如果想对一个List做分组操作,我们需要...原创 2018-11-03 14:37:04 · 89792 阅读 · 4 评论 -
Java 8 Stream partitioningBy对List分区
partitioningBy分区是一种特殊的分组,可以将List划分为两个子List,使用起来比较简单,如下:@Testpublic void partitionByTest(){ List<Integer> intList = Lists.newArrayList(1, 2, 3, 4, 5, 6, 7, 8); Map<Boolean, List&l...原创 2018-11-03 14:38:07 · 3238 阅读 · 0 评论 -
Java8实现Map/List/Set排序
Java8之前如果想对一个集合排序,那么集合元素要么实现了Comparable接口,要么另外定义一个继承于Comparator的比较器并实现compare方法,使用起来是非常麻烦的。在我之前的文章中也介绍了一种Guava的排序实现方案,也是非常简单的,有兴趣的同学可以去了解一下Guava Ordering 。Java8之后可以使用java.util包的Comparator比较器,实现对集合的排序,...原创 2018-11-03 14:39:15 · 7347 阅读 · 0 评论 -
java8 Optional
Optional是Guava提出的概念,通过使用检查空值的方式来防止代码污染,鼓励程序员写更干净的代码,解决空指针异常NullPointerException。受到Google Guava的启发,Optional在Java8正式加入Java豪华套餐。Optional实际上是个容器,它可以保存类型T的值,或者仅仅保存null。Optional提供很多有用的方法,这样我们就不用显式进行空值检测。由于J...原创 2018-11-02 07:05:41 · 960 阅读 · 0 评论 -
Java8 Stream使用flatMap合并List
之前也写过很多篇关于Java8使用的文章了,但是回顾一下,好像还没介绍过Java8 Stream的flatMap操作,昨天刚好在工作中遇到一个场景,发现flatMap简直太方便了,这里总结一下flatMap的常规使用。附带讲一下,使用Java8实现集合的并、交、差操作,其实之前也讲过一种使用Guava的实现方式,具体请参考Guava集合工具 flatMap 首先看一下一种场景,存在一个M...原创 2018-11-04 10:40:22 · 163576 阅读 · 19 评论 -
Java8 Map coumute操作
在整理Java编程拾遗『容器概述』这篇文章时,看到Map接口中在Java8后加入了compute的一系列方法,computeIfAbsent、computeIfPresent以及compute方法。本篇文章就来讲述一下这三个方法的使用。S.N. 方法 说明 1 default V computeIfAbsent(K key, Function<? super K, ...原创 2018-12-30 09:42:38 · 544 阅读 · 0 评论