“我記得我想告訴你一些關於約會的事情。”
“您已經告訴我 Java 有 Date 類,我可以使用該類來處理日期。”
“嗯。好吧,Date 類已經過時了一段時間了。”
“現在建議改用 Calendar 類,它有一個返回當前日期的 getTime() 方法。”
“這是一個通常創建的日曆對象:”
Calendar cal = Calendar.getInstance();
“當您調用此方法時,會根據您的計算機設置創建正確的日曆。”
“‘正確’的日曆?也就是說有好幾個?”
“是的。嗯,說'相關'會更準確。事實是地球上沒有一個,而是許多日曆。幾乎每一個都與某個宗教或國家有關。”
“年份可能會有所不同,具體取決於您所在的國家/地區。”
“這裡是最常見的日曆示例。”
日曆類 | 日曆名稱 |
---|---|
公曆 | 基督教公曆 |
佛歷 | 佛歷 |
日本皇曆 | 日本皇曆 |
“還有中國曆法、伊斯蘭曆法等等。”
“我懂了。”
“要獲取當前日期,您需要編寫如下代碼:”
Calendar cal = Calendar.getInstance();
Date date = cal.getTime();
“Calendar 類有許多方法可以讓您快速獲取有關日期和時間的任何信息。”
代碼 | 評論 |
---|---|
|
年月 月日_ 星期幾(週一、週二、週三……) 時 分秒 _ |
“有時你真的只需要獲取一些可用信息。例如,當前年份或星期幾。”
“但有時你只需要以正確的格式顯示日期。”
“例如,在日誌文件或其他地方。”
“或者做一個用戶可以自定義的格式,那你怎麼辦?”
“為此也有特殊的類。SimpleDateFormat類非常適合您描述的任務:”
Calendar calendar = Calendar.getInstance();
DateFormat formatter = new SimpleDateFormat("MM-DD-YY");
String message = formatter.format(calendar.getTime());
“啊,我記得了,關於SimpleDateFormat你已經跟我解釋過了,不過我真的記不太清了。”
“這一切都非常簡單。您創建一個SimpleDateFormat對象並將您想要獲得的日期模式傳遞給它。然後您調用格式方法,它會以所需的形式為您提供傳遞的日期。”
“聽起來很有趣。我想要更多細節。”
“給你。細節。這裡是一些可以在日期模式中使用的字母:”
信 | 描述 |
---|---|
G | 替換為紀元(AD 或 BC) |
是 | 換成年份 |
米 | 換成月份 |
w | 一年中的第幾週 |
W | 一個月中的第幾週 |
丁 | 一年中的天數 |
d | 每月的第幾天 |
F | 一個月中的星期幾 |
乙 | 一周中的天 |
A | 上午/下午(中午之前或之後) |
H | 24 小時格式的小時 (0-23) |
k | 24 小時格式的小時 (1-24) |
鉀 | 12 小時格式的小時 (0-11) |
H | 12 小時格式的小時 (1-12) |
米 | 分鐘 |
秒 | 秒 |
小號 | 毫秒 |
z | 時區,格式如下:太平洋標準時間,PST |
Z | 時區,格式如下:-0800/td> |
“太棒了!這就是你需要的一切。”
“重複這些字母仍然存在一些細微差別。”
“如果你寫 YY,你會得到年份的最後兩位數字。如果你寫 YYYY,你會得到年份的所有四位數字。”
“月份也有些複雜。MM是月份的數字。MMM是月份的三個字母的縮寫,即Jan、Feb、Mar、Apr、May等。MMMM代表月份的全稱”
“您還可以顯示一周中的全天(使用 EEEE)或僅顯示前兩個字母(使用 EE)。”
“謝謝,Rishi。這個 SimpleDateFormat 類真的很有用。現在我知道了。”
“享受使用吧!祝你好運!”
GO TO FULL VERSION