隨筆-31  評論-14  文章-0  trackbacks-0

          java.util.Date implements java.io.Serializable, Cloneable, Comparable<Date>

          所有日期類型的父類,已知子類Date、 TimeTimestampDate , Date 表示特定的瞬間,精確到毫秒。

               //默認是創(chuàng)建一個代表系統(tǒng)當(dāng)前日期的Date對象

                Date d = new Date();

               //創(chuàng)建一個我們指定的時間的Date對象:

          下面是使用帶參數(shù)的構(gòu)造方法,可以構(gòu)造指定日期的Date類對象,Date類中年份的參數(shù)應(yīng)該是實際需要代表的年份減去1900,實際需要代表的月份減去1以后的值。

          Date d1 = new Date(2009-1900, 6-1, 12); (注意參數(shù)的設(shè)置啊!)

                   正確獲得一個date對象所包含的信息

          如:

                  Date d2 =  new Date(2009-1900, 6-1, 12);

                  //獲得年份 (注意年份要加上1900,這樣才是日期對象d2所代表的年份)

                  int year = d2.getYear() + 1900;

                  //獲得月份  (注意月份要加1,這樣才是日期對象d2所代表的月份)

                  int month = d2.getMonth() + 1;

                  //獲得日期

                  int date = d2.getDate();

                  //獲得小時

                  int hour = d2.getHours();

                  //獲得分鐘

                  int minute = d2.getMinutes();

                  //獲得秒

                  int second = d2.getSeconds();

                  //獲得星期 (注意:0代表星期日、1代表星期12代表星期2,其他的一次類推了)

                  int day = d2.getDay();

           

           java.util.Calendar implements Serializable, Cloneable, Comparable<Calendar>

          Calendar類的功能要比Date類強大很多,而且在實現(xiàn)方式上也比Date類要復(fù)雜一些,是一個用來操作日期的輔助類

          Calendar類是一個抽象類,在實際使用時實現(xiàn)特定的子類的對象。由于Calendar類是抽象類,且Calendar類的構(gòu)造方法是protected的,所以無法使用Calendar類的構(gòu)造方法來創(chuàng)建對象,API中提供了getInstance方法用來創(chuàng)建對象。

           

           創(chuàng)建一個代表系統(tǒng)當(dāng)前日期的Calendar對象:

                   Calendar c = Calendar.getInstance();//默認是當(dāng)前日期

          創(chuàng)建一個指定日期的Calendar對象:

          使用Calendar類代表特定的時間,需要首先創(chuàng)建一個Calendar的對象,然后再設(shè)定該對象中的年月日參數(shù)來完成。

                   Calendar c1 = Calendar.getInstance();

          c1.set(2009, 6 - 1, 12);

           

          Calendar類中的一些些常量:

                   Calendar.YEAR——年份

                   Calendar.MONTH——月份

                   Calendar.DATE——日期

                   Calendar.DAY_OF_MONTH——月的某天

                   Calendar.HOUR——12小時制的小時

                   Calendar.HOUR_OF_DAY——24小時制的小時

                   Calendar.MINUTE——分鐘

                   Calendar.SECOND——秒

                   Calendar.DAY_OF_WEEK——星期幾


          java.util.GregorianCalendar extends Calendar

          GregorianCalendar 是 Calendar 的一個具體子類,提供了世界上大多數(shù)國家使用的標準日歷系統(tǒng)。

          GregorianCalendar類對象的創(chuàng)建

          GregorianCalendar有自己的構(gòu)造方法,而其父類Calendar沒有公開的構(gòu)造方法哦。

          GregorianCalendar() 
                    在具有默認語言環(huán)境的默認時區(qū)內(nèi)使用當(dāng)前時間構(gòu)造一個默認的 GregorianCalendar。

          GregorianCalendar(int year, int month, int dayOfMonth) 
                    在具有默認語言環(huán)境的默認時區(qū)內(nèi)構(gòu)造一個帶有給定日期設(shè)置的 GregorianCalendar。

          GregorianCalendar(int year, int month, int dayOfMonth, int hourOfDay, int minute) 
                    為具有默認語言環(huán)境的默認時區(qū)構(gòu)造一個具有給定日期和時間設(shè)置的GregorianCalendar。

          GregorianCalendar(int year, int month, int dayOfMonth, int hourOfDay, int minute, int second) 
                    為具有默認語言環(huán)境的默認時區(qū)構(gòu)造一個具有給定日期和時間設(shè)置的GregorianCalendar。

          創(chuàng)建一個代表當(dāng)前日期的GregorianCalendar對象

          GregorianCalendar gc = new GregorianCalendar();

          //創(chuàng)建一個代表2009年6月12日的GregorianCalendar對象(注意參數(shù)設(shè)置哦,與其父類是一樣的哦,月份要減去1)

          GregorianCalendar gc = new GregorianCalendar(2009,6-1,12);

          字段屬性什么的都是隨其父Calendar了,另外:GregorianCalendar有下面一個方法:

          isLeapYear(int year) : 確定給定的年份是否為閏年


          java.text.DateFormat extends Format

          DateFormat 是日期/時間格式化子類的抽象類,它以與語言無關(guān)的方式格式化并分析日期或時間。日期/時間格式化子類(如 SimpleDateFormat)允許進行格式化(也就是日期 -> 文本)、分析(文本-> 日期)和標準化。將日期表示為 Date 對象,或者表示為從 GMT(格林尼治標準時間)1970 年,1 月 1 日 00:00:00 這一刻開始的毫秒數(shù)。


          java.text.SimpleDateFormat extends DateFormat

          SimpleDateFormat 是一個以與語言環(huán)境相關(guān)的方式來格式化和分析日期的具體類。它允許進行格式化(日期 ->文本)、分析(文本 -> 日期)和規(guī)范化。

          所以本類可以實現(xiàn):String 到 Date   Date到String的互轉(zhuǎn),如下:

          SimpleDateFormat對象最常用的就是一下兩招了:

          //注意構(gòu)造函數(shù)中是SimpleDateFormat類解析日期的模式,大小寫代表的意義完全不一樣哦

                 SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");

                     //日期到字符串的轉(zhuǎn)換

                     String today = df.format(new Date());

                     //字符串到日期的轉(zhuǎn)換

                     Date date = df.parse("2009-06-12 02:06:37");

                     System.out.println(df.format(new Date()));

          posted on 2012-07-04 19:38 zhanghu198901 閱讀(1009) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
          博客園   IT新聞   Chat2DB   C++博客   博問  
           
          主站蜘蛛池模板: 扶沟县| 灵璧县| 太和县| 油尖旺区| 东丽区| 金阳县| 株洲县| 兴和县| 桐城市| 康乐县| 安平县| 隆尧县| 巢湖市| 安达市| 高州市| 增城市| 星子县| 外汇| 高雄市| 合作市| 台山市| 乐平市| 济阳县| 龙井市| 仙居县| 卓资县| 玛多县| 阳春市| 依兰县| 雷州市| 兴海县| 宜春市| 渭南市| 嘉定区| 水城县| 卢龙县| 宁德市| 巢湖市| 固镇县| 高州市| 衡阳市|