首页 > 编程笔记 > Java笔记 阅读:9

Java Date日期时间类的用法(附带实例)

Java 中的 Date 类封装当前的日期和时间。

JDK 中有两个同名的 Date,一个在 java.util 包中,一个在 java.sql 包中。前者从 JDK 1.0 开始出现,但它里面的一些方法逐渐被弃用(被 Calendar 的相应方法所取代),而后者是前者的子类,用来描述数据库中的时间字段。

Java Date 类的常用构造方法:

Java Date类的常用方法

Date 类中有很多方法,可以对时间日期进行操作,但是有许多方法从 JDK 1.1 以后已过时,其相应的功能也由 Calendar 中的方法取代。在此只介绍其中几个比较常用的方法,如下表所示。

表:Date类的常用方法
方法 描述
boolean after(Date when) 测试此日期是否在指定日期之后
boolean before(Date when) 测试此日期是否在指定日期之前
Object clone() 返回此对象的副本
int compareTo(Date anotherDate) 比较两个日期的顺序,如果参数 anotherDate 等于此 Date,则返回 0;如果此 Date 在参数 anotherDate 之前,则返回小于 0 的值;如果此 Date 在参数 anotherDate 之后,则返回大于0的值
boolean equals(Object obj) 比较两个日期的相等性。当且仅当参数不为 null,并且是一个表示与此对象相同的时间点(到毫秒)的 Date 对象时,结果才为 true
long getTime() 返回自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象表示的毫秒数
void setTime(long time) 设置 Date 对象,以表示 1970 年 1 月 1 日 00:00:00 GMT 以后 time(毫秒)的时间点
String toString() 把 Date 对象转换为字符串形式

下面通过一个例子演示 Date 类中相关方法的使用。

【实例】Date 类的应用。定义一个 Date 对象,代表当前时间点,输出该对象的字符串表示形式,同时输出该时间点与 1970 年 1 月 1 日零点零分相隔的毫秒数。
import java.util.*;

public class DeteDemo {
    public static void main(String[] args) {
        Date date = new Date(); // 实例化一个 Date 对象,代表当前时间点
        System.out.println(date); // 用 toString() 方法显示时间和日期
        long msec = date.getTime(); // 得到日期的毫秒数
        System.out.println("1970-1-1 到现在的毫秒数是 " + msec);
    }
}
程序执行结果为:
Thu Apr 17 08:37:49 UTC 2025
1970-1-1 到现在的毫秒数是 1744879069646

相关文章