分界线jdk8
jdk8之前和之后分别提供了一些日期和时间的类,推荐使用jdk8之后的日期和时间类
Date类型
这是一个jdk8之前的类型,其中有很多方法已经过时了,选取了一些没有过时的API
//jdk1.8之前的日期 Date
Date date = new Date();
// 从1970年1月1日 00:00:00开始计算的毫秒数
long time = date.getTime();
// 设置毫秒值
date.setTime(time + 1000);
// 通过毫秒值创建日期
Date date2 = new Date(time);
SimpleDateFormat
这是
jdk8之前的时间格式化的类
- 分别继承了DateFormat(格式化日期)和Format(格式化毫秒值)
- 可以格式化日期或者毫秒值
常见API
- SimpleDateFormat:构造器
- format:格式化函数
- parse:解析函数,前端传递给后端的都是字符串,需要这个API进行解析
//jdk1.8之前的日期格式化 SimpleDateFormat
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
// 日期转字符串 格式化
String dateStr = dateFormat.format(new Date());
// 字符串转日期 解析
Date parseDate = dateFormat.parse(dateStr);
// 如何判断两个时间的大小 通过毫秒值比较
Boolean flag = date.getTime() > date2.getTime();
Calendar
- Calendar 这个是
日历类
,但这是一个抽象类
- 优点:可以
单独
地获取和修改年月日时分秒无法使用构造器,使用类提供的静态实例方法
常见API