Java 时间处理

01

Date 时间类(java.util.Date)

在标准 Java 类库中包含一个 Date 类。它的对象表示一个特定的瞬间,精确到毫秒。分配一个 Date 对象,并初始化此对象为当前的日期和时间精确到毫秒。Date(long date) 分配 Date 对象并初始化此对象,以表示自从标准基准时间(称为“历元(epoch)”,即 1970 年 1 月 1 日 00:00:00 GMT)以来的指定毫秒数。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)。查看 API 文档大家可以看到很多方法过时了,JDK1.1 之前的 Date 包含了:日期操作、字符串转化成时间对象,时间对象。 1.1 之后,日期操作使用:Canlendar 类来。 字符串转化:DateFormat。

02

DateFormat 和 SimpleDateFormat 类

作用:把时间对象转化成指定格式的字符串。反之,把指定格式的字符串转化成时间对象。DateFormat 是一个抽象类。一般使用 SimpleDateFormat 类。

示例:

03

Calendar 日历类

Calendar 类是一个抽象类,它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。瞬间可用毫秒值来表示,它是距历元(即格林威治标准时间 1970 年 1 月 1 日的 00:00:00.000,格里高利历)的偏移量。GregorianCalendar 是 Calendar 的一个具体子类,提供了世界上大多数国家/地区使用的标准日历系统。注意月份的表示,一月是 0,二月是 1,以此类推,是 12 月是 11。因为大多数人习惯于使用单词而不是使用数字来表示月份,这样程序也许更易读,父类 Calendar 使用常量来表示月份:JANUARY, FEBRUARY,等等。

04

Joda-Time

传统的我们一般日期处理(格式化时间等)时往往会用java.util.Date这个类,但是对于一些复杂的日期处理就显得力不从心了。我们在平时项目中可能会遇到将格式化的时间转化为几天前,几个小时这样的形式,那么用 joda-time 就是一个很好的选择。

既然无法摆脱时间,为何不设法简化时间处理?

这就是 joda-time。

导入

在 pom.xml 里加入下面的依赖就可以使用了,或者可以百度找到 joda-time 的 jar 包。

实战

更详细的讲解链接(官方文档)

https://www.ibm.com/developerworks/cn/java/j-jodatime.html

现在的喜欢,其实不是真正的喜欢,只是因为不了解而已,真正的喜欢,是建立在非常了解的基础之上的。

了解 java 基础,喜欢上编程,不再迷茫。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180728G0994700?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券