一.Date類
System.currentTimeMillis() ?返回值long類型參數(shù)
//創(chuàng)建日期對(duì)象,把當(dāng)前的毫秒值轉(zhuǎn)成日期對(duì)象Date date = new Date(1607616000000L);System.out.println(date);//打印結(jié)果:Fri Dec 11 00:00:00 CST 2020
getTime():把日期對(duì)象轉(zhuǎn)換成對(duì)應(yīng)的時(shí)間毫秒值
?
二.DateFormat類
DateFormat 是日期/時(shí)間格式化子類的抽象類,它以與語(yǔ)言無(wú)關(guān)的方式格式化并解析日期或時(shí)間。日期/時(shí)間格式化子類(如 SimpleDateFormat類)允許進(jìn)行格式化(也就是日期 -> 文本)、解析(文本-> 日期)和標(biāo)準(zhǔn)化。
1.日期格式
構(gòu)造方法
SimpleDateFormat(String pattern):用給定的模式和默認(rèn)語(yǔ)言環(huán)境的日期格式符號(hào)構(gòu)造SimpleDateFormat
DateFormat類方法
format(Date date):將一個(gè)Date格式化為日期/時(shí)間字符串
//創(chuàng)建日期格式化對(duì)象,在獲取格式化對(duì)象時(shí)可以指定風(fēng)格DateFormat df= new SimpleDateFormat("yyyy-MM-dd");//對(duì)日期進(jìn)行格式化Date date = new Date(1607616000000L);String str_time = df.format(date);System.out.println(str_time);//2020年12月11日
DateFormat類的作用:即可以將一個(gè)Date對(duì)象轉(zhuǎn)換為一個(gè)符合指定格式的字符串,也可以將一個(gè)符合指定格式的字符串轉(zhuǎn)為一個(gè)Date對(duì)象。
規(guī)則是在一個(gè)字符串中,會(huì)將以下字母替換成對(duì)應(yīng)時(shí)間組成部分,剩余內(nèi)容原樣輸出:
當(dāng)出現(xiàn)y時(shí),會(huì)將y替換成年
當(dāng)出現(xiàn)M時(shí),會(huì)將M替換成月
當(dāng)出現(xiàn)d時(shí),會(huì)將d替換成日
當(dāng)出現(xiàn)H時(shí),會(huì)將H替換成時(shí)
當(dāng)出現(xiàn)m時(shí),會(huì)將m替換成分
當(dāng)出現(xiàn)s時(shí),會(huì)將s替換成秒
?
2.DateFormat類常用方法
?
format(Date date),用來(lái)將Date對(duì)象轉(zhuǎn)換成String
parse(String source),用來(lái)將String轉(zhuǎn)換成Date(轉(zhuǎn)換時(shí),該String要符合指定格式,否則不能轉(zhuǎn)換)
//把Date對(duì)象轉(zhuǎn)換成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中的內(nèi)容為2020年12月11日//把String轉(zhuǎn)換成Date對(duì)象 String str = ”2020年12月11日”; DateFormat df = new SimpleDateFormat(“yyyy年MM月dd日”); Date date = df.parse( str ); //Date對(duì)象中的內(nèi)容為Fri Dec 11 00:00:00 CST 2020
三.Calendar類
Calendar是日歷類,在Date后出現(xiàn),替換掉了許多Date的方法。該類將所有可能用到的時(shí)間信息封裝為靜態(tài)成員變量,方便獲取。
Calendar為抽象類,由于語(yǔ)言敏感性,Calendar類在創(chuàng)建對(duì)象時(shí)并非直接創(chuàng)建,而是通過(guò)靜態(tài)方法創(chuàng)建,將語(yǔ)言敏感內(nèi)容處理好,再返回子類對(duì)象
Calendar c = Calendar.getInstance(); //返回當(dāng)前時(shí)間
1.Calendar類常用方法
public static Calendar getInstance() //獲取日期對(duì)象public int get(int field) //獲取時(shí)間字段值,字段參見(jiàn)幫助文檔
YEAR 年
MONTH 月,從0開(kāi)始算起,最大11;0代表1月,11代表12月。
DATE 天
HOUR 時(shí)
MINUTE分
SECOND秒
Calendar c = Calendar.getInstance(); int year = c.get(Calendar.YEAR);
public void add(int field,int amount) //指定字段增加某值 Calendar c = Calendar.getInstance(); //修改當(dāng)前時(shí)間為3天后 c.add(Calendar.DATE, 3); //修改當(dāng)前時(shí)間為5小時(shí)后 c.add(Calendar.HOUR, 5);
public final void set(int field,int value)//設(shè)置指定字段的值 Calendar c = Calendar.getInstance(); //設(shè)置時(shí)間為2020年5月20日 c.set(Calendar.YEAR, 2020); c.set(Calendar.MONTH, 4); c.set(Calendar.DATE, 20);
public final Date getTime() //獲取該日歷對(duì)象轉(zhuǎn)成的日期對(duì)象Calendar c = Calendar.getInstance(); Date d = c.getTime();
2.注意事項(xiàng)
西方星期的開(kāi)始為周日,中國(guó)為周一。
在Calendar類中,月份的表示是以0-11代表1-12月。
日期是有大小關(guān)系的,時(shí)間靠后,時(shí)間越大。
?
來(lái)源:http://www.icode9.com/content-1-100001.html聯(lián)系客服