摘要:一構(gòu)造方法根據(jù)當(dāng)前的默認(rèn)毫秒值創(chuàng)建日期對(duì)象根據(jù)給定的毫秒值創(chuàng)建日期對(duì)象二成員方法運(yùn)行結(jié)果類(lèi)格式化這個(gè)是具體子類(lèi)的父類(lèi)中的一個(gè)方法解析可以進(jìn)行日期和字符串的格式化和解析,但是由于是抽象類(lèi),所以使用具體子類(lèi)。
第三階段 JAVA常見(jiàn)對(duì)象的學(xué)習(xí) Date、DateFormat和Calendar類(lèi)的簡(jiǎn)單認(rèn)識(shí) Date類(lèi)
Date:表示特定的瞬間,精確到毫秒。
(一) 構(gòu)造方法:Date():根據(jù)當(dāng)前的默認(rèn)毫秒值創(chuàng)建日期對(duì)象 Date(long date):根據(jù)給定的毫秒值創(chuàng)建日期對(duì)象(二) 成員方法:
getTime() setTime(long time)
import java.util.Date; public class DateDemo { public static void main(String[] args) { Date d1 = new Date(); System.out.println("d1:" + d1); Date d2 = new Date(System.currentTimeMillis()); System.out.println("d2:" + d2); } } //運(yùn)行結(jié)果 d1:Mon Jun 10 22:02:00 CST 2019 d2:Mon Jun 10 22:02:00 CST 2019DateFormat類(lèi)
Date → String(格式化)
//(這個(gè)是具體子類(lèi)SimpleDateFormat的父類(lèi)DateForamt中的一個(gè)方法) Public final String format(Date date)
String→ Date(解析) parse ()
public Date parse(String source)
DateFormat:
可以進(jìn)行日期和字符串的格式化和解析,但是由于是抽象類(lèi),所以使用具體子類(lèi)SimpleDateFormat。
/* * 其中 yyyy 是完整的公元年,MM 是月份,dd 是日期,HH:mm:ss 是時(shí)、分、秒。 * 注意:有的格式大寫(xiě),有的格式小寫(xiě) * 例如 MM 是月份,mm 是分;HH 是 24 小時(shí)制,而 hh 是 12小時(shí)制。 */ package cn.bwh_02_DateFormat; import java.text.SimpleDateFormat; import java.util.Date; public class DateFormatDemo { public static void main(String[] args) { Date d = new Date(); SimpleDateFormat ft = new SimpleDateFormat("E yyyy.MM.dd "at" hh:mm:ss a zzz"); System.out.println("Current Date:" + ft.format(d)); } } //運(yùn)行結(jié)果 Current Date:星期一 2019.06.10 at 10:23:43 下午 CST
案例:計(jì)算某一時(shí)間到現(xiàn)在的天數(shù)
import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Scanner; /* * 計(jì)算某一時(shí)間到現(xiàn)在的天數(shù) */ public class DateFormatDemo2 { public static void main(String[] args) throws ParseException { Scanner sc = new Scanner(System.in); System.out.println("請(qǐng)輸入過(guò)去的一個(gè)時(shí)間點(diǎn)(以“ - ”分隔):"); String line = sc.nextLine(); //把字符串轉(zhuǎn)換為一個(gè)日期 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); Date d = sdf.parse(line); //通過(guò)該日期獲取一個(gè)毫秒值 long oldTime = d.getTime(); //獲取當(dāng)前時(shí)間毫秒值 long nowTime = System.currentTimeMillis(); long time = nowTime - oldTime; long day = time/1000/60/60/24; System.out.println("這個(gè)時(shí)間過(guò)去:" + day + "天"); } } //運(yùn)行結(jié)果 請(qǐng)輸入過(guò)去的一個(gè)時(shí)間點(diǎn)(以“ - ”分隔): 2019-5-20 這個(gè)時(shí)間過(guò)去:21天Calendar 類(lèi)
Calendar類(lèi)是一個(gè)抽象類(lèi),常用語(yǔ)操作日歷字段如 YEAR,MONTH,DAY_OF_MONTH,HOUR等
//返回給定字段的值 public int get(int field) //根據(jù)給定的日歷字段和對(duì)應(yīng)的時(shí)間,來(lái)對(duì)當(dāng)前的日歷進(jìn)行操作。 //(amount可以是負(fù)的) public?void?add(int?field,int?amount) //設(shè)置當(dāng)前日歷的年月日 public?final?void?set(int?year,int?month,int?date)
import java.util.Calendar; public class CalendarDemo { public static void main(String[] args) { Calendar rightNow = Canlendar.getInstance();//子類(lèi)對(duì)象 //獲取年月日 int year = rightNow.get(Calendar.YEAR); int month = rightNow.get(Calendar.MONTH); int date = rightNow.get(Calendar.DATE); System.out.println(year + "年" + (month -1) + "月" + date + "日"); } }
案例:輸出指定年份的日歷
import java.util.Calendar; import java.util.Scanner; public class CalendarDemo { public static void main(String[] args) { Calendar c = Calendar.getInstance(); Scanner sc = new Scanner(System.in); System.out.println("請(qǐng)輸入年份:"); int year = sc.nextInt(); c.set(Calendar.YEAR, year); c.set(Calendar.MONTH, 0); c.set(Calendar.DAY_OF_MONTH, 1); while (c.get(Calendar.YEAR) == year) { int weekday = c.get(Calendar.DAY_OF_WEEK); int monthday = c.get(Calendar.DAY_OF_MONTH); if (monthday == 1) { System.out.println(" 日 一 二 三 四 五 六 第" + (c.get(Calendar.MONTH) + 1) + "月"); System.out.println("---------------------------------------------------"); for (int i = 0; i < weekday - 1; i++) System.out.print(" "); } System.out.print(monthday + " "); if (weekday == 7) System.out.println(); c.add(Calendar.DAY_OF_MONTH, 1); } sc.close(); } }結(jié)尾:
如果內(nèi)容中有什么不足,或者錯(cuò)誤的地方,歡迎大家給我留言提出意見(jiàn), 蟹蟹大家 !^_^
如果能幫到你的話,那就來(lái)關(guān)注我吧?。ㄏ盗形恼戮鶗?huì)在公眾號(hào)第一時(shí)間更新)
在這里的我們素不相識(shí),卻都在為了自己的夢(mèng)而努力 ?一個(gè)堅(jiān)持推送原創(chuàng)Java技術(shù)的公眾號(hào):理想二旬不止
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/77821.html
摘要:正則表達(dá)式的概述和簡(jiǎn)單使用正則表達(dá)式是指一個(gè)用來(lái)描述或者匹配一系列符合某個(gè)語(yǔ)法規(guī)則的字符串的單個(gè)字符串。例如,在表達(dá)式中,存在四個(gè)這樣的組組零始終代表整個(gè)表達(dá)式。 1_正則表達(dá)式的概述和簡(jiǎn)單使用 A:正則表達(dá)式 是指一個(gè)用來(lái)描述或者匹配一系列符合某個(gè)語(yǔ)法規(guī)則的字符串的單個(gè)字符串。其實(shí)就是一種規(guī)則。有自己特殊的應(yīng)用。 作用:比如注冊(cè)郵箱,郵箱有用戶名和密碼,一般會(huì)對(duì)其限制長(zhǎng)度,這個(gè)...
摘要:類(lèi)是日期時(shí)間格式化子類(lèi)的抽象類(lèi),我們通過(guò)這個(gè)類(lèi)可以幫我們完成日期和文本之間的轉(zhuǎn)換也就是可以在對(duì)象與對(duì)象之間進(jìn)行來(lái)回轉(zhuǎn)換。構(gòu)造方法由于為抽象類(lèi),不能直接使用,所以需要常用的子類(lèi)。 day01【Object類(lèi)、常用API】 主要內(nèi)容 Object類(lèi) Date類(lèi) DateFormat類(lèi) Calendar類(lèi) System類(lèi) StringBuilder類(lèi) 包裝類(lèi) 教學(xué)目標(biāo) -[ ] 能夠說(shuō)出...
摘要:類(lèi)是一個(gè)抽象類(lèi),它為特定瞬間與一組諸如等日歷字段之間的轉(zhuǎn)換提供了一些方法,并為操作日歷字段例如獲得下星期的日期提供了一些方法。是不變的日期時(shí)間對(duì)象代表一個(gè)日期時(shí)間,往往被視為年月日時(shí)分秒。獲得實(shí)例的日期和時(shí)間。 時(shí)區(qū) GMT(Greenwich Mean Time):格林尼治時(shí)間,格林尼治標(biāo)準(zhǔn)時(shí)間的正午是指當(dāng)太陽(yáng)橫穿格林尼治子午線時(shí)(也就是在格林尼治上空最高點(diǎn)時(shí))的時(shí)間。 UTC(U...
摘要:轉(zhuǎn)載語(yǔ)言的和類(lèi)語(yǔ)言的日歷日期,和日期格式組成了標(biāo)準(zhǔn)的一個(gè)基本但是非常重要的部分。值得注意的是我們使用了構(gòu)造函數(shù)創(chuàng)建一個(gè)日期對(duì)象,這個(gè)構(gòu)造函數(shù)沒(méi)有接受任何參數(shù),而這個(gè)構(gòu)造函數(shù)在內(nèi)部使用了方法來(lái)從系統(tǒng)獲取日期。 「轉(zhuǎn)載」Java語(yǔ)言的Calendar和Date類(lèi) Java 語(yǔ)言的Calendar(日歷),Date(日期),和DateFormat(日期格式)組成了Java標(biāo)準(zhǔn)的一個(gè)基本但是...
摘要:成員方法類(lèi)概述用于產(chǎn)生隨機(jī)數(shù)成員方法正則表達(dá)式相關(guān)方法判斷功能分割功能替換功能獲取功能和類(lèi)的使用類(lèi)概述包含一些有用的類(lèi)字段和方法。注意它不能被實(shí)例化,因?yàn)榇祟?lèi)構(gòu)造器是私有的成員方法類(lèi)類(lèi)概述表示特定的瞬間,精確到毫秒。 前言 我們都知道,JDK包含了JRE,而JRE中也提供了各種功能的java類(lèi),現(xiàn)在我們就對(duì)這些類(lèi)有個(gè)簡(jiǎn)單了解,然后靈活運(yùn)用。 常用類(lèi):Object類(lèi)/Scanner類(lèi),...
閱讀 2815·2023-04-25 14:41
閱讀 2426·2021-11-23 09:51
閱讀 3716·2021-11-17 17:08
閱讀 1703·2021-10-18 13:31
閱讀 5600·2021-09-22 15:27
閱讀 940·2019-08-30 15:54
閱讀 2254·2019-08-30 13:16
閱讀 760·2019-08-29 17:04