国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Java 日期類型詳解

2019-11-15 00:09:39
字體:
來源:轉載
供稿:網友
java 日期類型詳解

java api中日期類型的繼承關系

java.lang.Object

--java.util.Date

--java.sql.Date

--java.sql.Time

--java.sql.Timestamp

java.util.Date表示特定的瞬間,精確到了毫秒:

兩個構造函數(別的過期了的我就不說了) Date() Date(long date) 主要方法》》

boolean

after(Datewhen) 測試此日期是否在指定日期之后。

boolean

before(Datewhen) 測試此日期是否在指定日期之前。

Object

clone() 返回此對象的副本。

int

compareTo(DateanotherDate) 比較兩個日期的順序。

boolean

equals(Objectobj) 比較兩個日期的相等性。

long

getTime() 返回自 1970 年 1 月 1 日 00:00:00 GMT 以來此Date對象表示的毫秒數。(最常用的方法了)

java.sql下面的包主要是用在jdbc下的使用

Timestamp()

此類型由java.util.Date和單獨的毫微秒值組成。只有整數秒才會存儲在java.util.Date組件中。小數秒(毫微秒)是獨立存在的。傳遞java.util.Date類型的值時,Timestamp.equals(Object)方法永遠不會返回true,因為日期的毫微秒組件是未知的。因此,相對于java.util.Date.equals(Object)方法而言,Timestamp.equals(Object)方法是不對稱的。此外,hashcode方法使用基礎java.util.Date實現并因此在其計算中不包括毫微秒。

鑒于Timestamp類和上述java.util.Date類之間的不同,建議代碼一般不要將Timestamp值視為java.util.Date的實例。Timestamp和java.util.Date之間的繼承關系實際上指的是實現繼承,而不是類型繼承。

構造方法:

Timestamp(longtime)使用毫秒時間值構造Timestamp對象。

boolean

after(Timestampts) 指示此Timestamp對象是否晚于給定的Timestamp對象。

boolean

before(Timestampts) 指示此Timestamp對象是否早于給定的Timestamp對象。

int

compareTo(Dateo) 將此Timestamp對象與給定的Date(必須為Timestamp對象)相比較。

int

compareTo(Timestampts) 將此Timestamp對象與給定Timestamp對象相比較。

boolean

equals(Objectts) 測試此對象是否等于給定的Timestamp對象。

boolean

equals(Timestampts) 測試此Timestamp對象是否等于給定的Timestamp對象。

int

getNanos()(因為剛才說過了 我們不能通過java.util.Date來獲得毫秒 ,timestamp就自己提供) 獲取此Timestamp對象的nanos值。

long

getTime() 返回此Timestamp對象表示的自 1970 年 1 月 1 日 00:00:00 GMT 以來的毫秒數。

void

setNanos(intn) 將此Timestamp對象的nanos字段設置為給定值。

void

setTime(longtime) 設置此Timestamp對象,以表示 1970 年 1 月 1 日 00:00:00 GMT 以后time毫秒的時間點。

String

toString() 使用 JDBC 時間戳轉義格式編排時間戳。

staticTimestamp

valueOf(Strings) 將使用 JDBC 時間戳轉義格式的String對象轉換為Timestamp值。

因為是繼承了java.util.Date 所以也繼承了里面的方法。。這個類的主要作用就是在數據庫中插入時間,那有些人就會問為什么不用java.sql.Date,那么我們就來看下java.sql.Date>>

java.sql.Date》》

構造方法Date(longdate)使用給定毫秒時間值構造一個Date對象。

void

setTime(longdate) 使用給定毫秒時間值設置現有Date對象。

String

toString() 格式化日期轉義形式 yyyy-mm-dd 的日期。

staticDate

valueOf(Strings) 將 JDBC 日期轉義形式的字符串轉換成Date值。

可能有人發現了在我們用這個java.sql.Date類型插入數據庫的時候會發現丟失了時分秒,發生了自動截取,這是為什么呢?

原來java.sql.Date是為了配合SQL DATE而設置的數據類型。“規范化”的java.sql.Date只包含年月日信息,時分秒毫秒都會清零。格式類似:YYYY-MM-DD。當我們調用ResultSet的

getDate()方法來獲得返回值時,java程序會參照"規范"的java.sql.Date來格式化數據庫中的數值。因此,如果數據庫中存在的非規范化部分的信息將會被劫取。所以我們要精確的日期時應該使用Timestamp

Time():

Time(longtime)使用毫秒時間值構造Time對象。

void

setTime(longtime) 使用毫秒時間值設置Time對象。

String

toString() 使用 JDBC 時間轉義格式對時間進行格式化。

staticTime

valueOf(Strings) 將使用 JDBC 時間轉義格式的字符串轉換為Time值。

有了上面這些知識后,我們要進行轉換就發現一目了然了>>>基本都是可以通過getTime()方法獲得long類型的毫秒數在通過構造函數把這毫秒數傳過去就完成了轉換。如:

java.util.Date d = newjava.util.Date(sqlDate.getTime());


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 溆浦县| 定结县| 辛集市| 灯塔市| 阳谷县| 鄂伦春自治旗| 多伦县| 黑水县| 武强县| 百色市| 磴口县| 南通市| 泸州市| 溆浦县| 建昌县| 衢州市| 大港区| 舞钢市| 平顺县| 会东县| 泗洪县| 定结县| 巴彦淖尔市| 和林格尔县| 东源县| 循化| 吉安县| 宜良县| 吕梁市| 克什克腾旗| 汉寿县| 永济市| 法库县| 昌吉市| 通江县| 景宁| 呼伦贝尔市| 稷山县| 汾西县| 奇台县| 名山县|