随笔 - 172  文章 - 0  评论 - 0  阅读 - 11939

Java常用类(八)日期与时间类

 Date类  

“时间如流水,一去不复返”,时间是一个一维的东西。所以,我们需要一把刻度尺来表达和度量时间。在计算机世界,我们把1970年1月1日00:00:00定为基准时间,每个度量单位时毫秒(1秒的千分之一)。

  我们用long类型的变量来表示时间,从基准时间往前几亿年前,往后几亿年都能表示。如果想获得现在时刻的“时刻数值”,可以使用:

  long now=System.currenTimeMillis();

  这个“时刻数值”是所有时间类的核心值,年月日都是根据这个“数值”计算出来的。我们工作学习涉及的时间相关类有如下这些:

  

 

 在标准Java类库中包含一个Date类。它的对象表示一个特定的瞬间,精准到毫秒。

有以下方法:

1.Date()  分配一个Date对象,并初始化此对象为系统当前的日期和时间,可以精确到毫秒

2.Date(long Date)  分配Date对象并初始化此对象,以表示自从标准基准时间(称为“历元”,即1970年1月1日00:00:00 GMT)以来的指定的毫秒数

3.boolean after(Date when)  测试此日期是否在指定日期之后

4.boolean before(Date when)  测试此日期是否在指定日期之前

5.boolean equals(Object obj)  比较两个日期的相等性

6.long getTime()  返回自1970年1月1日00:00:00GMT以来此Date对象表示的毫秒数

7.String toString()  把此Date对象转换为以下形式的String

  dow  mon  dd  hh:mm:ss  zzz yyyy 其中,dow是一周中的某一天(Sun,Mon......)

 

Calendar类

  Calendar类是一个抽象类,为我们提供了关于日期计算的相关功能,比如:年,月,日,时,分,秒的展示和计算。Calendar类是一个抽象类,不可以被实例化,在程序中需要调用其静态方法getInstance()来得到一个Calendar对象,然后才能调用其相应的方法:

  GregorianCalendar是Calendar的一个具体子类,提供了世界上大多数国家/地区使用的标准日历系统。所以可以通过 new GregorianCalendar();父类引用来调用方法

注意:

  注意月份的表示,一月是0,二月是1,以此类推,12月是11,因为大多数人习惯使用单词而不是使用数字来表示月份,这样程序也许更易读,父类Calendar使用常量来表示月份:JANUARY,FEBRUARY等等

 

常用方法:

int get(int field)  返回指定日历字段的值

void add(int field,int amount)  根据日历规则,为指定的日历字段增加或减去指定的时间量

void set(int field,int value)  为指定日历字段设置指定值

void set(int year,int month,int date)  设置Calendar对象的年,月,日三个字段的值

其上大多数方法都用到了int类型的参数field,该参数需要接收Calendar类中指定的常量值,例如Calendar.YEAR用于表示年份

 

 

posted on   键盘敲烂的朱  阅读(152)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示