Java的 Date日期时间类

您所在的位置:网站首页 奥迪后面字母tfsi字母掉了 Java的 Date日期时间类

Java的 Date日期时间类

2023-05-14 00:20| 来源: 网络整理| 查看: 265

java.util 包提供了 Date 类来封装当前的日期和时间。 Date 类提供两个构造函数来实例化 Date 对象。

第一个构造函数使用当前日期和时间来初始化对象:

Date( )

第二个构造函数接收一个参数,该参数是从 1970 年 1 月 1 日起的毫秒数。

Date(long millisec)

Date 对象创建以后,可以调用下面的方法:

序号 方法描述 1 boolean after(Date date),若当调用此方法的Date对象在指定日期之后返回true,否则返回false 2 boolean before(Date date),若当调用此方法的Date对象在指定日期之前返回true,否则返回false 3 Object clone( ),返回此对象的副本 4 int compareTo(Date date),比较当调用此方法的Date对象和指定日期。两者相等时候返回0。调用对象在指定日期之前则返回负数。调用对象在指定日期之后则返回正数 5 int compareTo(Object obj),若obj是Date类型则操作等同于compareTo(Date) 。否则它抛出ClassCastException 6 boolean equals(Object date),当调用此方法的Date对象和指定日期相等时候返回true,否则返回false 7 long getTime( ),返回自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象表示的毫秒数 8 int hashCode( ),返回此对象的哈希码值 9 void setTime(long time),用自1970年1月1日00:00:00 GMT以后time毫秒数设置时间和日期 10 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 DateDemo { public static void main(String[] args) { // 初始化 Date 对象 Date date = new Date(); // 使用 toString() 函数显示日期时间 System.out.println(date.toString()); } } // 实例编译运行结果如下: // Tue Apr 04 22:50:40 CST 2023 日期比较

Java使用以下三种方法来比较两个日期:

使用 getTime() 方法获取两个日期(自1970年1月1日经历的毫秒数值),然后比较这两个值。 使用方法 before(),after() 和 equals()。例如,一个月的12号比18号早,则 new Date(99, 2, 12).before(new Date (99, 2, 18)) 返回true。 使用 compareTo() 方法,它是由 Comparable 接口定义的,Date 类实现了这个接口。 使用 SimpleDateFormat 格式化日期

SimpleDateFormat 是一个以语言环境敏感的方式来格式化和分析日期的类。SimpleDateFormat 允许你选择任何用户自定义日期时间格式来运行。例如:

import java.util.*; import java.text.*; public class DateDemo { public static void main(String[] args) { Date dNow = new Date( ); SimpleDateFormat ft = new SimpleDateFormat ("yyyy-MM-dd hh:mm:ss"); System.out.println("当前时间为: " + ft.format(dNow)); } } // 实例编译运行结果如下: // 当前时间为: 2023-04-04 10:55:24

SimpleDateFormat ft = new SimpleDateFormat ("yyyy-MM-dd hh:mm:ss"); 这一行代码确立了转换的格式,其中 yyyy 是完整的公元年,MM 是月份,dd 是日期,HH:mm:ss 是时、分、秒。注意:有的格式大写,有的格式小写,例如 MM 是月份,mm 是分;HH 是 24 小时制,而 hh 是 12 小时制。

日期和时间的格式化编码

时间模式字符串用来指定时间格式。在此模式中,所有的 ASCII 字母被保留为模式字母,定义如下:

字母 描述 示例 G 纪元标记 AD y 四位年份 2001 M 月份 July or 07 d 一个月的日期 10 h A.M./P.M. (1~12)格式小时 12 H 一天中的小时 (0~23) 22 m 分钟数 30 s 秒数 55 S 毫秒数 234 E 星期几 Tuesday D 一年中的日子 360 F 一个月中第几周的周几 2 (second Wed. in July) w 一年中第几周 40 W 一个月中第几周 1 a A.M./P.M. 标记 PM k 一天中的小时(1~24) 24 K A.M./P.M. (0~11)格式小时 10 z 时区 Eastern Standard Time ' 文字定界符 Delimiter " 单引号 ` 使用printf格式化日期

printf 方法可以很轻松地格式化时间和日期。使用两个字母格式,它以 %t 开头并且以下面表格中的一个字母结尾。

%tY:输出四位数的年份,例如:2023 %ty:输出两位数的年份,例如:23 %tm:输出两位数的月份,例如:02 %tB:输出月份的全名,例如:February %tb:输出月份的缩写,例如:Feb %tA:输出星期的全名,例如:Wednesday %ta:输出星期的缩写,例如:Wed %td:输出两位数的日期,例如:24 %te:输出一位或两位数的日期,例如:24 或 02 %tH:输出24小时制的小时数,例如:23 %tI:输出12小时制的小时数,例如:11 %tM:输出分钟数,例如:45 %tS:输出秒数,例如:30 %tp:输出上午还是下午,例如:AM 或 PM %tZ:输出时区,例如:GMT+08:00 转换符 说明 示例 %tc 包括全部日期和时间信息 星期六 十月 27 14:21:20 CST 2007 %tF "年-月-日"格式 2007-10-27 %tD "月/日/年"格式 10/27/07 %tr "HH:MM:SS PM"格式(12时制) 02:25:51 下午 %tT "HH:MM:SS"格式(24时制) 14:28:16 %tR "HH:MM"格式(24时制) 14:28

printf格式化日期实例:

格式化日期:

import java.util.Date; public class DateFormatExample { public static void main(String[] args) { Date date = new Date(); System.out.printf("%tY-%tm-%td %tH:%tM:%tS %tZ", date, date, date, date, date, date, date); } } // 执行输出结果为: // 2023-04-05 09:59:23 CST

使用转换符格式化日期:

import java.util.Date; public class DateDemo { public static void main(String[] args) { // 初始化 Date 对象 Date date = new Date(); //c的使用 System.out.printf("全部日期和时间信息:%tc%n",date); //f的使用 System.out.printf("年-月-日格式:%tF%n",date); //d的使用 System.out.printf("月/日/年格式:%tD%n",date); //r的使用 System.out.printf("HH:MM:SS PM格式(12时制):%tr%n",date); //t的使用 System.out.printf("HH:MM:SS格式(24时制):%tT%n",date); //R的使用 System.out.printf("HH:MM格式(24时制):%tR",date); } } // 实例编译运行结果如下: // 全部日期和时间信息:星期三 四月 05 10:06:21 CST 2023 // 年-月-日格式:2023-04-05 // 月/日/年格式:04/05/23 // HH:MM:SS PM格式(12时制):10:06:21 上午 // HH:MM:SS格式(24时制):10:06:21 // HH:MM格式(24时制):10:06

如果你需要重复提供日期,那么利用这种方式来格式化它的每一部分就有点复杂了。因此,可以利用一个格式化字符串指出要被格式化的参数的索引。索引必须紧跟在 % 后面,而且必须以 $ 结束。例如:

import java.util.Date; public class DateDemo { public static void main(String[] args) { // 初始化 Date 对象 Date date = new Date(); // 使用toString()显示日期和时间 // %1$索引指向 "Due date:" // %2$索引指向 date System.out.printf("%1$s %2$tB %2$td, %2$tY", "Due date:", date); } } // 实例编译运行结果如下: // Due date: 四月 05, 2023

或者,你可以使用 < 标志。它表明先前被格式化的参数要被再次使用。例如:

import java.util.Date; public class DateDemo { public static void main(String[] args) { // 初始化 Date 对象 Date date = new Date(); // 显示格式化时间 System.out.printf("%s %tB %


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3