java時間類處理實例代碼

(更多精彩內容,請訪問我的網站:http://www.xuediit.cn,謝謝支持)

 

 

import java.util.*;
import java.util.Date;
import java.util.Calendar;
import java.util.GregorianCalendar;
import java.util.Locale;
import java.util.TimeZone;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.text.ParseException;

public class TestTime {

public static void main(String [] args){
   new TestTime().testDate();
   new TestTime().testCalendar();
   new TestTime().testLocale();
   new TestTime().testTimeZone();
   new TestTime().testGregorianCalendar();
   new TestTime().testSimpleDateFormat();
}

// 1.java.util.Date類:表示特定的時間點,精確到毫秒,但不支持日期的國際化和分時區顯示。
public void testDate(){
   Date d1 = new Date();
   Date d2 = new Date(2000);
   System.out.println(d1);
   System.out.println(d2);
   System.out.println(d2.compareTo(d1)); //d2大輸出1,d2小輸出-1,等則輸出0
   System.out.println(d2.equals(d1));
   System.out.println("----------------------");
}

// 2. java.util.Calendar類:是抽象類,提供了常規的日期修改功能和國際化支持。
public void testCalendar(){
   //調用靜態方法getInstance()來獲得實例對象,此對象基於當前系統時間
   Calendar c = Calendar.getInstance();
   System.out.println(c.get(Calendar.YEAR));
   System.out.println(c.get(Calendar.MONTH));
   System.out.println(c.get(Calendar.DATE));
   System.out.println(c.get(Calendar.HOUR_OF_DAY));
   System.out.println(c.get(Calendar.MINUTE));
   System.out.println(c.get(Calendar.SECOND));
   System.out.println(c.get(Calendar.AM_PM));
  
   c.add(Calendar.YEAR,10); // 在現在的基礎上加了10年
   System.out.println(c.get(Calendar.YEAR));
  
   c.set(2009,8,28); //設置基於的時間,其他時間默認當前系統時間
   System.out.println(c.get(Calendar.YEAR));
   System.out.println(c.get(Calendar.MONTH));
   System.out.println(c.get(Calendar.DATE));
   System.out.println(c.get(Calendar.HOUR_OF_DAY));
   System.out.println("--------------------------");  
}

// 3. java.util.GregorianCalendar類:是Calendar類的子類,有用的是有個判斷閏年的方法。
public void testGregorianCalendar(){
   GregorianCalendar gc = new GregorianCalendar();
   System.out.println(gc.isLeapYear(2008));
   System.out.println("------------------------");
}



    public void testLocale(){
   Locale defaultLocale = Locale.getDefault(); //當前機器所在的國家和地區
   System.out.println(defaultLocale);
   System.out.println(defaultLocale.getLanguage());     //英文宿寫的語言名
   System.out.println(defaultLocale.getCountry());       //英文宿寫的國家名
   System.out.println(defaultLocale.getDisplayName());      //語言名(國家名)
   System.out.println(defaultLocale.getDisplayLanguage()); //語言名
   System.out.println(defaultLocale.getDisplayCountry()); //國家名
   System.out.println("--------------------------");
}

   
    // 5. java.util.TimeZone類:此抽象類描述時區信息。可以調用靜態方法getDefault()一獲得該類的實例對象。      
public void testTimeZone(){
    //String[] ids = TimeZone.getAvailableIDs();
    TimeZone tz = TimeZone.getDefault();
    System.out.println(tz);
    System.out.println(tz.getDisplayName()); //isLeapYear()返回值是布爾類型
    System.out.println("---------------------------");
}


// 6. java.text.DateFormat類: 提供了將日期/時間信息進行格式化處理的功能。
public void testDateFormat(){
   DateFormat df1 = DateFormat.getDateTimeInstance();
   String str1 = df1.format(new Date());
   System.out.println(str1);
}


// 7. java.text.SimpleDateFormat類:DateFormat類的子類,自定義格式化日期和時間,是12小時制。
public void testSimpleDateFormat(){
   SimpleDateFormat sdf1 = new SimpleDateFormat();
   String ssf1 = sdf1.format(new Date());
   System.out.println(ssf1);
   SimpleDateFormat sdf2 = new SimpleDateFormat("2009/04/29");
   SimpleDateFormat sdf3 = new SimpleDateFormat("yyyy年MM月dd日 hh:mm:ss");
  
   String ssf2 = sdf2.format(new Date());
   System.out.println(ssf2);
   try{
    Date d = sdf2.parse("2009/04/29");
    System.out.println(d);
   }catch(ParseException e){
    e.printStackTrace();
   }
      
   System.out.println("----------------------------");
}
}

(更多精彩內容,請訪問我的網站:http://www.xuediit.cn,謝謝支持)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章