util是utility(即:中文工具)的簡寫,也就是java的實用工具集包,該包提供了大量的實用工具類,常用工具如日期與時間操作、隨機數(shù)、正則表達式、國際化等,而在util包中比較核心的應該是Collection類集工具,java系統(tǒng)提供了豐富的數(shù)據(jù)結構用于出集合的操作。
一、Date類簡介
日期類主要包括Date類與Calendar類,這一節(jié)我們先介紹Date類, Date
表示特定的瞬間,精確到毫秒。Date類用于表示日期和時間,在計算機中的表示和我們現(xiàn)實世界使用差不多,但是還是有點區(qū)別的,而且還有中西文化之間的差異,所以在學習這個類之前,我們清楚Date類和現(xiàn)實世界之間對世界的之間的差異:
年份由整數(shù)表示,但是Date類的年份由1900開始算,也就是Date類的年份為y,那么現(xiàn)實世界就是 y + 1900 表示。
月份由從 0 至 11 的整數(shù)表示,也就是0 是一月、1 是二月等等;因此 11 是十二月。
日期(一月中的某天)按通常方式由整數(shù) 1 至 31 表示,這點和現(xiàn)實世界一致。
小時由從 0 至 23 的整數(shù)表示。因此,從午夜到 1 a.m. 的時間是 0 點,從中午到 1 p.m. 的時間是 12 點,這點和現(xiàn)實世界一致。
分鐘按通常方式由 0 至 59 的整數(shù)表示,這點和現(xiàn)實世界一致。
秒由 0 至 61 的整數(shù)表示;值 60 和 61 只對閏秒發(fā)生,盡管那樣,也只用在實際正確跟蹤閏秒的 Java 實現(xiàn)中。于按當前引入閏秒的方式,兩個閏秒在同一分鐘內發(fā)生是極不可能的,但此規(guī)范遵循 ISO C 的日期和時間約定。
Date可是精確到毫秒,Date的元毫秒從1970 年 1 月 1 日 00:00:00 GMT 以來此 Date 對象表示的毫秒數(shù)。
二、Date類常用方法
在java中,日期時間用java.util.Date來表示,調用默認構造器Data(),將會創(chuàng)建一個當前系統(tǒng)時間的Date對象,時間精確到毫秒。Date類常用方法是:
Date()
分配 Date 對象并初始化此對象,以表示分配它的時間(精確到毫秒)。
boolean after(Date when)
測試此日期是否在指定日期之后。
boolean before(Date when)
測試此日期是否在指定日期之前。
int compareTo(Date anotherDate)
比較兩個日期的順序。
其它的還有很多獲得年月日時分秒的函數(shù),但是這些方法都已經(jīng)過期,這些方法都已經(jīng)Calendar.get(...)方法替代了,當然雖然過期了,但是還是可以使用的。示例代碼如下:
程序輸出如下:
true
1
年:2014,月:2,日:20,星期:4,時:23,分:3,秒:5
現(xiàn)在的毫秒:1392908585
三、時間的格式化顯示
各系統(tǒng)在顯示時間的格式是不統(tǒng)一的,在中國一般采用英式日期,如“2013-02-02 17:30:24”的格式,而在美國時間的顯示則為“月-日-年”的格式“02-02-2013 17:30:24”。要想格式化時間或者把字符串轉換為Date類,可以使用java.text.Dateformat抽象類規(guī)定日期格式化的操作,具體常用的實現(xiàn)是java.text.SimpleDateformat類。
示例代碼如下:
程序輸出如下:
Thu Feb 20 23:03:05 CST 2014
2014-2-20 23:03:05
聯(lián)系客服