1 package Test; 2 3 import java.text.DateFormat; 4 import java.text.SimpleDateFormat; 5 import java.util.Calendar; 6 import java.util.Date; 7 import java.util.GregorianCalendar; 8 //Calendar 日曆類 這是一個抽象類 須要用GregorianCalendar來實現 日曆類能夠實現日起計算,好比今天+100天是哪一天。 9 public class TestCalendar { 10 public static void main(String[] args) { 11 //獲取日期的相關元素 12 Calendar c1 =new GregorianCalendar(2000,10,9,22,10,20);//年,月,日,時,分,秒 13 int year = c1.get(Calendar.YEAR);//獲取年份。2000 14 System.out.println(year); 15 Date d1 =c1.getTime();//獲取date對象 16 System.out.println(d1); 17 int mouth =c1.get(Calendar.MONTH);//獲取月份 18 System.out.println(mouth);//10 0-11 表示1-12月 19 int weekday =c1.get(Calendar.DAY_OF_WEEK);//5 星期天-1 星期一-2 ·····星期六-7 月份和星期幾都和中國的不同,用的時候注意 20 System.out.println(weekday); 21 //設置日期的相關元素------------------------------------------------ 22 Calendar c2 =new GregorianCalendar();//若是不填寫參數則默認爲今天 23 Date d2 = c2.getTime(); 24 DateFormat dd =new SimpleDateFormat("yyyy-MM-dd"); 25 System.out.println(dd.format(d2));//2019-07-11 26 //設置年份 27 Calendar c3 =new GregorianCalendar(); 28 c3.set(Calendar.YEAR, 2000);//設置年份 29 c3.set(2000, 05, 22, 22, 57, 24);//設置年月日時分秒 30 System.out.println(c3.getTime());//Thu Jun 22 22:57:24 CST 2000 31 //日期對象和時間對象之間的轉化 32 Date d5 =c2.getTime();//將時間類轉換成了日期類 33 Calendar c6 =new GregorianCalendar(); 34 c6.setTime(d5);//將日期類轉換成了日曆類、 35 printCalendar(c6); 36 37 } 38 //建立一個想要的輸出日曆類的格式 39 static void printCalendar(Calendar c){ 40 //輸出格式: 2018:12:13 20:47:28 週三 41 int year = c.get(Calendar.YEAR); 42 int month = c.get(Calendar.MONTH)+1; 43 int days = c.get(Calendar.DAY_OF_MONTH); 44 int hours =c.get(Calendar.HOUR); 45 int min =c.get(Calendar.MINUTE); 46 int sec =c.get(Calendar.SECOND); 47 int weekdays =c.get(Calendar.DAY_OF_WEEK)-1; 48 49 System.out.println(year+":"+month+":"+days+" "+hours+":"+min+":"+sec +" 今天是周"+weekdays); 50 //2019:7:11 9:36:56 今天是周4 51 } 52 53 54 55 }