簡體   English   中英

日歷.YEAR,.MONTH,DAY_OF_MONTH與date.getDay()等不同?

[英]Calendar .YEAR, .MONTH, DAY_OF_MONTH different than date.getDay() etc?

我意識到這一點:

Calendar c = new GregorianCalendar();
mYear=c.get(Calendar.YEAR);
mMonth=c.get(Calendar.MONTH);
mDay=c.get(Calendar.DAY_OF_MONTH);

還有這個:

Date d = c.getTime();
int day = d.getDay();
int month = d.getMonth();
int year= d.getYear();

產生不同的數字,是否有一些我缺少的初始化? 我關心因為我正在使用ORMLite並嘗試將日期存儲到數據庫中,這是一個Date對象,但是Date已被棄用,所以我現在嘗試使用Calendar但是它看起來並不那么簡單,因為上面的代碼導致了日,月和年的不同答案。

不推薦使用Date.getYear(), getMonth() and getDay() ,特別要求您使用Calendar.get()

你得到不同答案的原因是雙重的

getDay()返回星期幾而不是日期 - 在這里使用getDate()

getYear()返回年份 - 1900年

以下是API文檔中的相關說明

已過時。 從JDK 1.1版開始,由Calendar.get(Calendar.YEAR) - 1900取代。

http://download.oracle.com/javase/6/docs/api/java/util/Date.html#getYear%28%29

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM