目录
一.Date类
1.1 什么是Date类
1.2 Date类的构造器和常用方法
1.2.1 常用构造器
1.2.2 常用方法
二.SimpleDateFormat
2.1 什么是SimpleDateFormat
2.2 SimpleDateFormat的作用
2.3 SimpleDateFormat的构造器和方法
2.3.1 构造器
2.3.2 方法
2.3.3 例子
2.4 SimpleDateFormat解析字符串时间成为日期对象
三.Calendar
3.1 Calendar概述
3.2 Calendar创建日历对象的方法
3.3 Calendar的常用方法
3.4 使用Calendar的注意事项
四 LocalDate、LocalTime、LocalDateTime
4.1 LocalDate、LocalTime、LocalDateTime概述
4.2 LocalDate、LocalTime、LocalDateTime的方法
4.2.1 一些方法名相同的API
4.2.3 LocalDateTime向LocalDate、LocalTime转换的API
4.2.4 修改 相关的API
五.Instant
5.1 Instant概述
5.2 如何获取时间戳
5.3 Instant的注意事项
六.DateTimeFormatter
七.Period和Duration
7.1 Period
7.2 Duration
八.CHronoUnit
一.Date类
1.1 什么是Date类
Date类代表当前系统的日期时间信息
1.2 Date类的构造器和常用方法
1.2.1 常用构造器
名称 | 说明 |
public Date() | 创建一个Date对象,代表的是系统当前日期时间 |
public Date(long time) | 把时间毫秒值转换成Date日期时间对象 |
1.2.2 常用方法
名称 | 说明 |
public long getTime() | 返回从1970年1月1日00:00:00走到此刻的总的毫秒数 |
public long setTime() | 设置日期对象的时间为当前毫秒值对应的时间 |
Note:获取当前系统时间对应的毫秒值还可以用System.currentTimeMillis()方法
二.SimpleDateFormat
2.1 什么是SimpleDateFormat
代表简单日期格式化,可以用来把日期时间格式化为我们想要的形式。
2.2 SimpleDateFormat的作用
1. 可以用来把日期时间格式化为我们想要的形式。
2. 可以把字符串时间解析成Date日期对象。
2.3 SimpleDateFormat的构造器和方法
2.3.1 构造器
2.3.2 方法
2.3.3 例子
2.4 SimpleDateFormat解析字符串时间成为日期对象
例子:
三.Calendar
3.1 Calendar概述
Calendar代表了系统此刻日期对应的日历对象。
3.2 Calendar创建日历对象的方法
3.3 Calendar的常用方法
3.4 使用Calendar的注意事项
1.Calendar重写了toString方法,可以直接输出打印,查看Calendar的字段信息,方便单独查看、修改某些字段。
2.Calendar是一个抽象类,不能直接创建对象。
3.Calendar是可变日期对象,一旦修改其对象本身表示的时间将发生变化。
四 LocalDate、LocalTime、LocalDateTime
4.1 LocalDate、LocalTime、LocalDateTime概述
这三个类分别代表日期、时间、日期时间对象,它们的类的实例都是不可变的对象。
4.2 LocalDate、LocalTime、LocalDateTime的方法
4.2.1 一些方法名相同的API
它们三者没有构造器,且很多方法的名字都是一样的。
4.2.3 LocalDateTime向LocalDate、LocalTime转换的API
4.2.4 修改 相关的API
LocalDateTime综合了LocalDate和LocalTime的方法,所以下面只用LocalDate和LocalTime举例。
这些方法返回的都是新的实例引用,因为LocalDate、LocalTime、LocalDateTime都是不可变的。
五.Instant
5.1 Instant概述
Instant是时间戳的意思,时间戳包含日期和时间,与Date很类似。
5.2 如何获取时间戳
Instant类由一个静态的工厂方法now()可以返回当前时间戳。
例如:
5.3 Instant的注意事项
Instant和Date是可以互相转换的
1.Instant转为Date
2.Date转为Instant
六.DateTimeFormatter
在JDK8中,引入了一个全新的日期与时间格式器DateTimeFormatter。
正反都能调用format方法
七.Period和Duration
7.1 Period
- 在Java8中,我们可以使用以下类来计算日期间隔差异:java.time.Period
- 主要是 Period 类方法 getYears(),getMonths() 和 getDays() 来计算,只能精确到年月日。
- 用于 LocalDate 之间的比较。
7.2 Duration
- 在Java8中,我们可以使用以下类来计算时间间隔差异:java.time.Duration
- 提供了使用基于时间的值测量时间量的方法。
- 用于 LocalDateTime 之间的比较。也可用于 Instant 之间的比较。
八.CHronoUnit
- ChronoUnit类可用于在单个时间单位内测量一段时间,这个工具类是最全的了,可以用于比较所有的时间单位