Java Date类
1.1?Date類概述
類 Date 表示特定的瞬間,精確到毫秒。
繼續查閱Date類的描述,發現Date擁有多個構造函數,只是部分已經過時,但是其中有未過時的構造函數可以把毫秒值轉成日期對象。
?
//創建日期對象,把當前的毫秒值轉成日期對象
Date date = new?Date(1607616000000L);
System.out.println(date);
//打印結果:Fri Dec?11 00:00:00 CST 2020
可是將毫秒值轉成日期后,輸出的格式不利于我們閱讀,繼續查閱API,Date中有getYear、getMouth等方法,可以他們已經過時,繼續往下查閱,看到了toString方法。
?
點開toString()方法查閱,原來上面打印的date對象就是默認調用了這個toString方法,并且在這個方法下面還有讓我們參見toLocaleString方法,點進去,這個方法又過時了,從 JDK 1.1 開始,由 DateFormat.format(Date date) 取代。
既然這個方法被DateFormat.format(Date date) 取代,那么就要去查閱DateFormat類。
1.2?Date類常用方法
?
l?把日期對象轉換成對應的時間毫秒值
第2章?DateFormat
2.1?DateFormat類概述
DateFormat 是日期/時間格式化子類的抽象類,它以與語言無關的方式格式化并解析日期或時間。日期/時間格式化子類(如 SimpleDateFormat類)允許進行格式化(也就是日期 -> 文本)、解析(文本-> 日期)和標準化。
我們通過這個類可以幫我們完成日期和文本之間的轉換。
繼續閱讀API,DateFormat 可幫助進行格式化并解析任何語言環境的日期。對于月、星期,甚至日歷格式(陰歷和陽歷),其代碼可完全與語言環境的約定無關。
2.2?日期格式
要格式化一個當前語言環境下的日期也就是日期 -> 文本),要通過下面的方法來完成。DateFormat是抽象類,我們需要使用其子類SimpleDateFormat來創建對象。
l?構造方法
?
l?DateFormat類方法
?
代碼演示:
//創建日期格式化對象,在獲取格式化對象時可以指定風格
DateFormat df= new SimpleDateFormat("yyyy-MM-dd");//對日期進行格式化
Date date = new?Date(1607616000000L);
String str_time = df.format(date);
System.out.println(str_time);//2020年12月11日
l?DateFormat類的作用:即可以將一個Date對象轉換為一個符合指定格式的字符串,也可以將一個符合指定格式的字符串轉為一個Date對象。
指定格式的具體規則我們可參照SimpleDateFormat類的說明,這里做簡單介紹,規則是在一個字符串中,會將以下字母替換成對應時間組成部分,剩余內容原樣輸出:
l?當出現y時,會將y替換成年
l?當出現M時,會將M替換成月
l?當出現d時,會將d替換成日
l?當出現H時,會將H替換成時
l?當出現m時,會將m替換成分
l?當出現s時,會將s替換成秒
2.3?DateFormat類常用方法
?
l?format方法,用來將Date對象轉換成String
l?parse方法,用來將String轉換成Date(轉換時,該String要符合指定格式,否則不能轉換)。
代碼演示:
練習一:把Date對象轉換成String
?????Date date = new Date(1607616000000L);//Fri Dec?11 00:00:00 CST 2020
DateFormat df = new SimpleDateFormat(“yyyy年MM月dd日”);
String str = df.format(date);
//str中的內容為2020年12月11日
?
練習二:把String轉換成Date對象
String str = ”2020年12月11日”;
DateFormat df = new SimpleDateFormat(“yyyy年MM月dd日”);
Date date = df.parse( str );
//Date對象中的內容為Fri Dec?11 00:00:00 CST 2020
轉載于:https://www.cnblogs.com/wzhdcyy/p/8708315.html
總結
以上是生活随笔為你收集整理的Java Date类的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 求一个好听的小男孩英文名字!
- 下一篇: byte转文件流 下载到本地