简介 Java 8通过发布新的Date-Time API (JSR 310)来进一步加强对日期与时间的处理。 在旧版的 Java 中,日期时间 API 存在诸多问题,其中有: 非线程安全 ? java.util.Date 是非线程安全的,所有的日期类都是可变的,这是Java日期类最大的问题之一。 设 ...
分类:
编程语言 时间:
2019-08-19 19:06:29
阅读次数:
93
简介 Java 8 新增了接口的默认方法。 简单说,默认方法就是接口可以有实现方法,而且不需要实现类去实现其方法。 我们只需在方法名前面加个 default 关键字即可实现默认方法。 为什么要有这个特性? 首先,之前的接口是个双刃剑,好处是面向抽象而不是面向具体编程,缺陷是,当需要修改接口时候,需要 ...
分类:
编程语言 时间:
2019-08-11 15:15:29
阅读次数:
77
在java中常常会遇到这样一个问题,在实际应用中,总会碰到对List排序并过滤重复的问题,如果List中放的只是简单的String类型过滤so easy,但是实际应用中并不会这么easy,往往List中放的是一个类,类中有多个属性,要过滤重复数据,而且这个重复数据要按自己指定的属性过滤,但是要想按照 ...
分类:
编程语言 时间:
2019-08-06 13:51:48
阅读次数:
104
一、Java 8 Lambda 表达式 Lambda表达式,也可称为闭包,它是推动 Java 8 发布的最重要新特性 。 Lambad表达式允许函数作为一个方法的参数(函数作为参数传递进方法中)。 ...
分类:
编程语言 时间:
2019-07-11 20:01:05
阅读次数:
93
一、简单介绍Map 在讲解Map排序之前,我们先来稍微了解下map。map是键值对的集合接口,它的实现类主要包括:HashMap,TreeMap,Hashtable以及LinkedHashMap等。其中这四者的区别如下(简单介绍): HashMap:我们最常用的Map,HashMap是无序的,它根据 ...
分类:
编程语言 时间:
2019-07-04 22:43:40
阅读次数:
303
虽然参考网上有查到一些示例,但是感觉用到的地方有限,就上段代码中备注掉的传统非空判断,其实没有必要将每个对象取出,直接判断也行,不过为了代码简洁,新特性需要多加借鉴。 下面的这个例子倒是有让人眼前一亮的感觉,如有更多渐变代码编程实例,欢迎留言! 套用公司的一句话:我们的目标是简单、直接地解决问题,任 ...
分类:
编程语言 时间:
2019-07-02 17:38:20
阅读次数:
128
import java.util.ArrayList; import java.util.List; import com.test.lambda.Person.Sex; public class Lambda03 { public static void main(String[] args) { ...
分类:
编程语言 时间:
2019-06-26 13:27:00
阅读次数:
105
【前言】 java8新特性 java8 函数接口 java8 Optional使用总结 Java 8 时间日期使用 java8中一个非常重要的特性就是lambda表达式,我们可以把它看成是一种闭包,它允许把函数当做参数来使用,是面向函数式编程的思想,一定程度上可以使代码看起来更加简洁。例如以前我们使 ...
分类:
编程语言 时间:
2019-06-18 20:06:43
阅读次数:
141
Java接口本身没有任何实现,因为Java接口不涉及表象,而只描述public行为,所以Java接口比Java抽象类更抽象化。 以上是百度百科中对接口的定义,这个定义已经不准确。 Java8对接口做了进一步的增强。1.在接口中可以添加使用 default 关键字修饰的非抽象方法。 2.接口里可以声明 ...
分类:
编程语言 时间:
2019-06-17 00:57:49
阅读次数:
110
特点: 速度更快(HashMap加哈希表,ConcurrentHashMap使用CAS,内存结构无永久区、新增元数据区使用物理内存)代码更少(增加了新的语法 Lambda 表达式)强大的 Stream API便于并行(优化ForkJoin)//JDK8之前 需要自己实现计算过程,下面的省略部分代码p ...
分类:
编程语言 时间:
2019-06-09 09:31:56
阅读次数:
129