java Dated Dateformat Calendar
?
Date類概述
類Date表示特定的瞬間,精確到毫秒。1000毫秒=1秒
時間的原點:公元1970年 一月一日,午夜0:00:00 對應的毫秒值就是0
注意:時間和日期的計算,必須依賴毫秒值
1 long d =System.currentTimeMillis(); system.currentTimeMillis()獲取當前的毫秒值 2 System.out.println(d);構造函數
1 Date d1 =new Date(d); 2 System.out.println(d1);Date類常用方法
1 long d =System.currentTimeMillis(); 獲取當前的毫秒數給d,用getTime方法轉成毫秒數 2 Date d1 =new Date(); 3 System.out.println(d1.getTime());DateFormat類
DateFormat 是日期/時間格式化子類的抽象類,它以與語言無關的方式格式化并解析日期或時間。日期/時間格式化子類(如 SimpleDateFormat類)允許進行格式化(也就是日期 -> 文本)、解析(文本-> 日期)和標準化。
?日期格式
?構造方法
DateFormat類方法
?
1 SimpleDateFormat sim =new SimpleDateFormat("yyyy-MM-d HH:mm:ss"); 創建日期格式類型 2 Date d =new Date(); 獲取當前日期 3 String str =sim.format(d); 把當前日期傳進來,調用format方法,并賦值給str 4 System.out.println(str);l?DateFormat類的作用:即可以將一個Date對象轉換為一個符合指定格式的字符串,也可以將一個符合指定格式的字符串轉為一個Date對象。
指定格式的具體規則我們可參照SimpleDateFormat類的說明,這里做簡單介紹,規則是在一個字符串中,會將以下字母替換成對應時間組成部分,剩余內容原樣輸出:
l?當出現y時,會將y替換成年
l?當出現M時,會將M替換成月
l?當出現d時,會將d替換成日
l?當出現H時,會將H替換成時
l?當出現m時,會將m替換成分
l?當出現s時,會將s替換成秒
?DateFormat類常用方法
1 SimpleDateFormat sim =new SimpleDateFormat("yyyy-MM-dd"); 2 String d ="2018-05-25"; 創建字符串類型的日期格式 3 Date dd =sim.parse(d); 調用parse方法傳值字符串賦值給dd 4 System.out.println(dd);l?format方法,用來將Date對象轉換成String
l?parse方法,用來將String轉換成Date(轉換時,該String要符合指定格式,否則不能轉換)。
?Calendar類
Calendar是日歷類,在Date后出現,替換掉了許多Date的方法。該類將所有可能用到的時間信息封裝為靜態成員變量,方便獲取。
Calendar為抽象類,由于語言敏感性,Calendar類在創建對象時并非直接創建,而是通過靜態方法創建,將語言敏感內容處理好,再返回子類對象
??Calendar類靜態方法
?
1 Calendar c =Calendar.getInstance(); 2 System.out.println(c); 返回當前日歷Calenar常用方法
?YEAR?年
?MONTH 月,從0開始算起,最大11;0代表1月,11代表12月。
?DATE 天
?HOUR 時
?MINUTE分
SECOND秒
1 Calendar c =Calendar.getInstance(); 獲取日歷,用get方法獲取月份 2 System.out.println(c.get(Calendar.YEAR)); 1 Calendar c =Calendar.getInstance(); 2 c.add(Calendar.YEAR, 3); //add偏移,向后3年。 打印輸出2021年 3 System.out.println(c.get(Calendar.YEAR)); 1 Calendar c =Calendar.getInstance(); 2 c.set(Calendar.YEAR, 2022); //可以一個一個屬性的改,也可以一次改好多個屬性 3 c.set(2020, 7, 7, 7, 7, 7); 4 System.out.println(c.get(Calendar.YEAR)); 1 Calendar c =Calendar.getInstance(); 將日歷對象轉成日期對象 2 System.out.println(c.getTime());1.1?注意事項
西方星期的開始為周日,中國為周一。
在Calendar類中,月份的表示是以0-11代表1-12月。
日期是有大小關系的,時間靠后,時間越大。
?小練習
?求出自己已經出生多少天
1 long a=System.currentTimeMillis(); //獲取當前的毫秒數 2 Calendar ca =Calendar.getInstance(); //獲取當前的日歷,然后改成出生日期 3 ca.set(1996, 8,20); 4 Date b =ca.getTime(); //將這個日歷轉成日期格式,再轉成毫秒數 5 long c =b.getTime(); 6 long d =(a-c)/24/60/60/1000; //毫秒數相減,當前的毫秒數前去出生的 7 System.out.println(d);*/?
?
?
?
?
?
?
?
轉載于:https://www.cnblogs.com/wangrongchen/p/9090962.html
總結
以上是生活随笔為你收集整理的java Dated Dateformat Calendar的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JavaScript 之 高级程序设计
- 下一篇: 第22件事 产品规划和运营规划