第十四節下篇:日期相關類(個人總結)

Date類

  • 用途一:Date類中的方法基本上都已經過時,被Calendar類所替代,不過它也有其比較方便的地方,例如獲取當前日期並以字符串的形式輸出:
  • SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    String s = sdf.format(new Date());  //new Date() 即爲獲取當前時間
    System.out.println(s);
    
  • 用途二:由於SimpleDateFormat類無法對Calendar的子類對象進行格式化,因此此時必須藉助Date類對象作爲載體來完成數據格式的轉換.

SimpleDateFormat類

  • 主要用來對日期進行格式化
    • 將日期格式爲字符串:
      • SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        String s = sdf.format(new Date());
        System.out.println(s);
        
    • 將字符串格式化爲日期:
      • SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        Date date = sdf.parse("2016-09-07");
        

Calendar類

  • 此類如今是日期類型操作中的重頭戲
  • 其中包含的靜態常量所對應的日期信息(注意:必須要經過對象.get(Calendar.靜態常量)後才能獲取靜態常量所代表具體的日期)
  • Date date = sdf.parse("2016-09-07");
    Calendar is = Calendar.getInstance();
    is.setTime(date);
    
    • Calendar.YEAR 代表當前Calendar子類對象的當前年份 is.get(Calendar.YEAR)值爲2016
    • Calendar.DAYOFYEAR 代表當前Calendar子類對象的當前年份的第幾天 is.get(Calendar.DAYOFYEAR)值爲251
    • Calendar.MONTH 代表當前Calendar子類對象的當前月份 (is.get(Calendar.MONTH))+1 值爲9,因爲month是從零開始,所以直接獲取的值會比實際月份少一個月,所以要進行加一操作.
    • Calendar.DAYOFMONTH 代表當前Calendar子類對象的當前月的當前日期號 is.get(Calendar.DAYOFMONTH) 值爲7
    • Calendar.DATE 代表當前Calendar子類對象的當前月的當前日期號 is.get(Calendar.DATE) 值爲7 因此其與Calendar.DAYOFMONTH獲取值是相同的
    • Calendar.DAYOFWEEK 代表當前Calendar子類對象的當前星期的第幾天,因爲按照美國時間來的,而美國週日爲一週的第一天,因此當獲取星期的時候要處理一下 is.get(Calendar.DAYOFWEEK) 值爲4
  • Calendar類中需要掌握的兩個方法:

    • public void add(int field,int amount)

      is.add(Calendar.DATE, -1);//對當前日期對象進行操作,可以對其分別進行年份,月份等等加減操作.
      
    • public final void set(int year,int month,int date)

      is.set(is.get(Calendar.YEAR), is.get(Calendar.MONTH), 1);//直接對日期對象內的屬性進行設置.
發佈了43 篇原創文章 · 獲贊 29 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章