Date类的常见用法——JavaSE基础
Date类的常见用法
Date类属于java.util
包
因此需要导入Date类
-
Date() 分配一个Date对象,并初始化此对象为系统当前的日期和时间,可以精确到毫秒)。
-
Date(long date) 分配 Date 对象并初始化此对象,以表示自从标准基准时间(称为“历元(epoch)”,即 1970 年 1 月 1 日 00:00:00 GMT)以来的指定毫秒数。
-
boolean after(Date when)
测试此日期是否在指定日期之后。 -
booleanbefore(Date when)
测试此日期是否在指定日期之前。 -
boolean equals(Object obj)
比较两个日期的相等性。 -
long getTime()
返回自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象表示的毫秒数。 -
String toString()
把此 Date 对象转换为以下形式的 String:dow mon dd hh:mm:ss zzz yyyy 其中: dow 是一周中的某一天 (Sun、 Mon、Tue、Wed、 Thu、 Fri、 Sat)。
import java.util.Date; public class Demo04 { public static void main(String[] args) { Date date1 = new Date(); System.out.println(date1); System.out.println(date1.toString()); long i = date1.getTime(); Date date2 = new Date(i-1000); Date date3 = new Date(i+1000); Date date4 = new Date(1000); // 生成一个基准时间之后n ms的时间,这里是基准后1000ms System.out.println(date4); // 输出基准时间后1000ms的时刻 System.out.println(date1.after(date2)); // 判断date1是否是在date2之后的时间 System.out.println(date1.before(date2)); // 判断date1是否是在date2之前的时间 System.out.println(date1.equals(date2)); // 判断date1是否和date2相等 System.out.println(date1.after(date3)); System.out.println(date1.before(date3)); System.out.println(date1.equals(date3)); System.out.println(date1.equals(date1)); // 测试date1是否和其本身相等 } }
运行结果
Mon Jun 28 16:20:51 CST 2021 Mon Jun 28 16:20:51 CST 2021 Thu Jan 01 08:00:01 CST 1970 true false false false true false true
DateFormat与SimpleDateFormat
SimpleDateFormat是对抽象类DateFormat的实现
这个类主要用于对Date类型进行格式化
import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; public class Demo05 { public static void main(String[] args) throws ParseException { // new出SimpleDateFormat对象 SimpleDateFormat s1 = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); // 规定格式为年-月-日 时:分:秒 SimpleDateFormat s2 = new SimpleDateFormat("yyyy-MM-dd"); // 规定格式为年-月-日 // 将时间对象转换成字符串 String daytime = s1.format(new Date()); System.out.println(daytime); // 输出年月日时分秒 System.out.println(s2.format(new Date())); // 输出年月日 System.out.println(new SimpleDateFormat("hh:mm:ss").format(new Date())); // 只输出时分秒 // 将符合指定格式的字符串转成成时间对象.字符串格式需要和指定格式一致。 String time = "2007-10-7"; Date date = s2.parse(time); // 使用s2规定格式将String类型解析并转换为Date类型 System.out.println("date1: " + date); // 输出 time = "2007-10-7 20:15:30"; date = s1.parse(time); // 使用s1规定格式将String类型解析并转换为Date类型 System.out.println("date2: " + date); } }
运行结果
2021-06-28 04:16:33 2021-06-28 04:16:33 date1: Sun Oct 07 00:00:00 CST 2007 date2: Sun Oct 07 20:15:30 CST 2007
分类:
JavaSE
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· winform 绘制太阳,地球,月球 运作规律
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
· AI 智能体引爆开源社区「GitHub 热点速览」