已经对该文章进行更清晰的解析,详情见博客中:Java:常用API接上篇 --黑马笔记
Date 类提供两个构造函数来实例化 Date 对象。
第一个构造函数使用当前日期和时间来初始化对象。
Date( )
第二个构造函数接收一个参数,该参数是从 1970 年 1 月 1 日起的毫秒数。
Date(long millisec)
Date类使用:
Date date = new Date();
System.out.println(date.toString());//Tue Jan 16 10:24:26 CST 2024
使用 SimpleDateFormat 格式化日期
SimpleDateFormat 是一个以语言环境敏感的方式来格式化和分析日期的类。SimpleDateFormat 允许你选择任何用户自定义日期时间格式来运行。
示例:
Date date = new Date();
System.out.println(date.toString());//Tue Jan 16 10:24:26 CST 2024
SimpleDateFormat ft = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
System.out.println("当前时间:"+ft.format(date));
运行结果:
日期比较:
compareTo方法
compareTo方法返回一个整数值,表示两个日期的比较结果。如果返回值小于0,则表示date1在date2之前;如果返回值大于0,则表示date1在date2之后;如果返回值等于0,则表示两个日期相等。
示例:
package com.itheima.date;
import java.util.Date;
public class Demo02 {
public static void main(String[] args) {
Date date01 = new Date();
Date date02 = new Date();
int type = date01.compareTo(date02);//输出:date01和date02相等
if (type < 0) {
System.out.println("date01在date02之前");
} else if (type > 0) {
System.out.println("date01在date02之后");
} else {
System.out.println("date01和date02相等");
}
}
}
before(),after()
讲解:before()就是date1在date2之前,而after()就是date1在date2之后。
示例:
package com.itheima.date;
import java.util.Date;
public class Demo03 {
public static void main(String[] args) {
Date date01 = new Date();
Date date02 = new Date();
if (date01.before(date02)) {
System.out.println("date01在date02之前");
} else if (date01.after(date02)) {
System.out.println("date01在date02之后");
} else {
System.out.println("date01和date02相等");
}
//输出:date01和date02相等
}
}
转换成时间戳(毫秒)
Date类方法:
long getTime( )
返回自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象表示的毫秒数。
示例:
package com.itheima.date;
import java.util.Date;
public class Demo04 {
public static void main(String[] args) {
Date date01 = new Date();
Date date02 = new Date();
long date01Cur=date01.getTime(); //转为时间戳
long date02Cur=date02.getTime();
if (date01Cur>date02Cur) {
System.out.println("date01在date02之后");
} else if (date02Cur>date01Cur) {
System.out.println("date02在date01之后");
} else {
System.out.println("date01和date02相等");
}
//输出:date01和date02相等
}
}