一射沟,Date類:日期類
表示特定的瞬間殊者,精確到毫秒,1秒=1000毫秒
1. 構造:
public Date();
無參構造验夯,構造一個代表當前系統(tǒng)時間的Date對象
public Date(long time)猖吴;
一指定毫秒創(chuàng)建一個代表當前系統(tǒng)時間的Date對象 毫秒值代表距離
標準時間(1970年01月01日 00:00:00)的毫秒值
把毫秒值轉換為Date對象
2. 成員方法:
toString();
是Date類重寫了Object類的toString 方法
返回值是 (星期幾 月份 月份 時:分:秒 時區(qū) 年)
getTime();
把Date對象轉換為毫秒值
返回值是當前時間距離標準時間有多少毫秒值
二,DateFormat類:日期格式化類
把date對象按指定格式轉換為String
DateFormat是一個抽象類挥转,不能直接使用它
一般使用SimpleDateFormat
1.構造
SimpleDateFormat(String pattern)
得到格式化時間
* y 年; M 年中的月份;
* w 年中的周數(shù);
* W月份中的周數(shù)海蔽;
* D 年中的天數(shù) ;
* d 月份中的天數(shù) 绑谣;
* F 月份中的星期 党窜;
* E 星期中的天數(shù) ;
* a Am/pm 標記借宵;
* H 一天中的小時數(shù)(0-23);
* k 一天中的小時數(shù)(1-24)幌衣;
* K am/pm 中的小時數(shù)(0-11)
* h am/pm 中的小時數(shù)(1-12)
* m 小時中的分鐘數(shù)
* s 分鐘中的秒數(shù)
* S 毫秒數(shù)
* z 時區(qū)
* Z 時區(qū)
2.成員方法
format(Date d);格式化時間
傳入Date
返回已經(jīng)格式化的字符串
parse(str);解析時間
傳入需要解析的字符串
返回Date對象
demo如圖1所示:輸出 :
2019年01月21日,19時 39分 53秒
Mon Jan 21 19:39:53 CST 2019
Mon Jan 21 19:39:53 CST 2019
三暇务,Calendar類:日歷類
Calendar是一個抽象類泼掠,不能直接使用
一般使用Calender的靜態(tài)方法
1.靜態(tài)方法
getInstance()
使用:Calendar.getInstance();
2.成員方法
get(Calendar.YEAR)怔软;獲取時間
獲取Calender中的某一個字段/成員變量
static int | ALL_STYLES getDisplayNames的樣式說明符垦细, 表示所有樣式的名稱择镇,如“1月”和“1月”。 |
---|---|
static int | AM AM_PM字段的值表示從午夜到中午之前的一天中的一段時間括改。 |
static int | AM_PM 對于現(xiàn)場數(shù) get和 set指示是否 HOUR是前或中午之后腻豌。 |
static int | APRIL MONTH字段的價值 指示了格里高利和朱利安日歷中的第四個月。 |
protected boolean | areFieldsSet 如果 fields[]與當前設置的時間同步嘱能,則為真吝梅。 |
static int | AUGUST MONTH領域的價值 指示了公歷和朱利安日歷中的第八個月。 |
static int | DATE get和 set字段編號表示該月的日期惹骂。 |
static int | DAY_OF_MONTH get字段編號和 set本月的日期苏携。 |
static int | DAY_OF_WEEK get字段編號和 set表示一周中的日期。 |
static int | DAY_OF_WEEK_IN_MONTH get字段編號和 set當月的 set幾的序號对粪。 |
static int | DAY_OF_YEAR get和 set字段編號右冻, set本年度的日數(shù)。 |
static int | DECEMBER MONTH字段的值表示公歷和朱利安日歷中的第十二個月著拭。 |
static int | DST_OFFSET get和 set字段編號 get夏令時偏移量(以毫秒為單位)纱扭。 |
static int | ERA get和 set字段號表示時代,例如在儒略歷中的AD或BC儡遮。 |
static int | FEBRUARY MONTH字段的價值表示今年第二個月在公歷和朱利安日歷乳蛾。 |
static int | FIELD_COUNT get和 set的不同字段的數(shù)量。 |
protected int[] | fields 該日歷的當前設置時間的日歷字段值鄙币。 |
static int | FRIDAY DAY_OF_WEEK字段的值表示周五肃叶。 |
static int | HOUR get和 set字段編號, get上午或下午的小時十嘿。 |
static int | HOUR_OF_DAY get字段編號和 set當天的小時數(shù)被环。 |
protected boolean[] | isSet 說明是否設置日歷的指定日歷字段的標志。 |
protected boolean | isTimeSet 如果那么那么 time的值是有效的详幽。 |
static int | JANUARY MONTH字段的價值表示今年首次在公歷和朱利安日歷筛欢。 |
static int | JULY MONTH字段的值代表了 公歷和朱利安日歷中的第七個月。 |
static int | JUNE MONTH字段的價值 指示了公歷和朱利安日歷中的第六個月唇聘。 |
static int | LONG getDisplayName和 getDisplayNames相當于 LONG_FORMAT的樣式說明 符 版姑。 |
static int | LONG_FORMAT getDisplayName和 getDisplayNames的樣式說明 符 , 表示用于格式的長名稱迟郎。 |
static int | LONG_STANDALONE 一個 getDisplayName和 getDisplayNames的樣式說明 符 剥险, 表示一個獨立使用的長名稱,例如月份名稱作為日歷頭宪肖。 |
static int | MARCH MONTH字段的值代表了 公歷和朱利安日歷中的第三個月表制。 |
static int | MAY MONTH領域的價值 指示了公歷和朱利安日歷中的第五個月健爬。 |
static int | MILLISECOND get和 set字段號表示 get內(nèi)的 set數(shù)。 |
static int | MINUTE get和 set字段編號表示小時內(nèi)的分鐘么介。 |
static int | MONDAY DAY_OF_WEEK字段的值表示星期一娜遵。 |
static int | MONTH get和 set字段號表示月份。 |
static int | NARROW_FORMAT getDisplayName和 getDisplayNames的樣式說明 符 壤短, 表示用于格式的窄名稱设拟。 |
static int | NARROW_STANDALONE getDisplayName和 getDisplayNames的樣式說明 符 獨立地表示一個狹義的名稱。 |
static int | NOVEMBER MONTH領域的價值 指示了公歷和朱利安日歷中的第十一個月久脯。 |
static int | OCTOBER MONTH字段的價值表示在公歷和朱利安日歷中的一年中的第十個月纳胧。 |
static int | PM AM_PM字段的值表示從中午到午夜之前的一天中的一段時間。 |
static int | SATURDAY DAY_OF_WEEK字段的值表示星期六帘撰。 |
static int | SECOND get和 set字段編號表示分鐘內(nèi)的第二個跑慕。 |
static int | SEPTEMBER MONTH字段的值代表了 公歷和朱利安日歷中的第九個月。 |
static int | SHORT getDisplayName和 getDisplayNames的樣式說明 符 摧找, 相當于 SHORT_FORMAT 核行。 |
static int | SHORT_FORMAT getDisplayName和 getDisplayNames的樣式說明 符 , 表示用于格式的短名稱慰于。 |
static int | SHORT_STANDALONE 一個用于 getDisplayName和 getDisplayNames的樣式說明 符 钮科, 表示一個簡單的名稱,例如一個月縮寫作為日歷頭婆赠。 |
static int | SUNDAY DAY_OF_WEEK字段的值表示星期天绵脯。 |
static int | THURSDAY DAY_OF_WEEK字段的值表示星期四。 |
protected long | time 這個日歷的當前設定時間休里,以1970年1月1日蛆挫,格林尼治標準時間0:00:00之后的毫秒表示。 |
static int | TUESDAY DAY_OF_WEEK字段的值表示周二妙黍。 |
static int | UNDECIMBER MONTH字段的值表示一年的第十三個月悴侵。 |
static int | WEDNESDAY DAY_OF_WEEK字段的值表示周三。 |
static int | WEEK_OF_MONTH get和 set字段編號拭嫁, set當月的周數(shù)可免。 |
static int | WEEK_OF_YEAR get和 set字段編號, set本年度的周數(shù)做粤。 |
static int | YEAR get現(xiàn)場編號和 set表示年份浇借。 |
static int | ZONE_OFFSET get和 set字段編號, get GMT以毫秒為 get的原始偏移量怕品。 |
add(int field, int amount); 調整時間
給定的字段添加指定的值如demo2
注意:添加天數(shù)妇垢,月份,年等等 該方法會自動計算
輸出結果:
java.util.GregorianCalendar[time=1548078976051,areFieldsSet=true,areAllFieldsSet=true,lenient=true,zone=sun.util.calendar.ZoneInfo[id="Asia/Shanghai",offset=28800000,dstSavings=0,useDaylight=false,transitions=19,lastRule=null],firstDayOfWeek=1,minimalDaysInFirstWeek=1,ERA=1,YEAR=2019,MONTH=0,WEEK_OF_YEAR=4,WEEK_OF_MONTH=4,DAY_OF_MONTH=21,DAY_OF_YEAR=21,DAY_OF_WEEK=2,DAY_OF_WEEK_IN_MONTH=3,AM_PM=1,HOUR=9,HOUR_OF_DAY=21,MINUTE=56,SECOND=16,MILLISECOND=51,ZONE_OFFSET=28800000,DST_OFFSET=0]
2019年01月21日
2019年01月23日
set(int field, int value)設置時間
//設置時間
calendar.set(Calendar.YEAR,1000);
calendar.set(Calendar.DAY_OF_MONTH,10);
calendar.set(Calendar.MONTH,100);
System.out.println(getDate(calendar));
輸出:1008年5月10日
三,時間類的轉換
Calendar 轉化 String
Calendar calendar= Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String dateStr = sdf.format(calendar.getTime());
String 轉化Calendar
String str="2019-1-21";
SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd");
Date date =sdf.parse(str);
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
Date 轉化String
SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd");
String dateStr=sdf.format(new Date());
String 轉化Date
String str="2019-1-21";
SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd");
Date date= sdf.parse(str);
Date 轉化Calendar
Calendar calendar = Calendar.getInstance();
calendar.setTime(new Date());
Calendar轉化Date
Calendar calendar = Calendar.getInstance();
Date date =calendar.getTime();