06 2020 档案
摘要:Java8之前的日期和时间API,存在一些问题,最重要的就是线程安全的问题。这些问题都在Java8中的日期和时间API中得到了解决,而且Java8中的日期和时间API更加强大。 传统时间格式化的线程安全问题 示例: import java.text.SimpleDateFormat; import
阅读全文
摘要:在Java8之前的版本中,接口中只能声明常量和抽象方法,接口的实现类中必须实现接口中所有的抽象方法。而在Java8中,接口中可以声明默认方法和静态方法。 接口中的默认方法 Java 8中允许接口中包含具有具体实现的方法,该方法称为“默认方法”,默认方法使用“ default ”关键字修饰 。 示例:
阅读全文
摘要:什么是Optional容器类 Optional 类(java.util.Optional) 是一个容器类,代表一个值存在或不存在,原来用 null 表示一个值不存在,现在 Optional 可以更好的表达这个概念。并且可以避免空指针异常。 Optional类常用方法: Optional.of(T t
阅读全文
摘要:什么是Stream Stream 是 Java8 中处理集合的关键抽象概念,它可以指定你希望对集合进行的操作,可以执行非常复杂的查找、过滤和映射数据等操作。 使用Stream API 对集合数据进行操作,就类似于使用 SQL 执行的数据库查询。也可以使用 Stream API 来并行执行操作。简而言
阅读全文
摘要:背景:同事从码云上克隆项目,项目编译不通过,报错信息是有一个jar包在Maven仓库中不存在 此时,他的本地Maven仓库中确实不存在这个jar包。 解决步骤: 1: Idea中,用Maven 的Reimport 重新导包,正常情况下,如果存在本地仓库中没有的jar包,会自动下载。但是,在他电脑上下
阅读全文
摘要:为什么使用Lambda表达式: Lambda是一个匿名函数,我们可以把Lambda表达式理解为是一段可以传递的代码(将代码像数据一样进行传递)。它是 JDK8 的一个新特性,可以取代大部分的匿名内部类,写出更优雅的 Java 代码,极大地优化代码结构。 JDK 也提供了大量的内置函数式接口供我们使用
阅读全文