原創(chuàng)作品,可以轉(zhuǎn)載,但是請標(biāo)注出處地址:http://www.cnblogs.com/V1haoge/p/7136575.html
1、Calendar概述
Java官方推薦使用Calendar來替換Date的使用,Calendar與Date之間可以自由的進(jìn)行轉(zhuǎn)換,轉(zhuǎn)換的紐帶是time,使用Calendar的getTime()方法可以得到一個Date類型的對象,這個對象底層是使用Date的第二個帶Long型參數(shù)的構(gòu)造器創(chuàng)建的,這個Long型參數(shù)是Calendar中的time字段中保存的值,這個time字段的值是在具體的實現(xiàn)類中定義賦值的比如GregorianCalendar中的實現(xiàn)computeTime(),這個方法的目的就是將field值轉(zhuǎn)換為time值,這個涉及到Calendar中的兩種模式,之后會有介紹;而通過Calendar的setTime(Date date)方法可以將一個Date對象轉(zhuǎn)換為一個Calendar對象,這個方法以一個Date對象為參數(shù),底層調(diào)用的setTimeInMillis(long millis)方法,將date.getTime()的值作為參數(shù),再底層會將這個Long型參數(shù)值賦值給time字段,這時會重計算field值。
Calendar與Date的轉(zhuǎn)換
1 public static void main(String[] args) { 2 //Calendar--->Date 3 Calendar c = Calendar.getInstance(); 4 Date d = c.getTime(); 5 //Date--->Calendar 6 Date d1 = new Date(); 7 Ca