Calendar.getInstance().getTime() 獲取當前時間(包括星期和時區 CST China Standard Time): Fri Jan 06 21:03:36 CST 2017
Calendar cal = Calendar.getInstance();
完整顯示今天當前的日期和時間:
第一種方法:
DateFormat fmtDateTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println(fmtDateTime.format(new Date()));
輸出:2017-01-06 21:19:02
第二種方法:
cal.setTime(new Date()) ;
System.out.println( fmtDateTime.format(cal.getTime()) );
輸出:2017-01-06 23:41:00
顯示年份:
Calendar cal = Calendar.getInstance();
System.out.println(cal.get(Calendar.YEAR));
輸出: 2017
顯示月份:從0開始,要加1
System.out.println(cal.get(Calendar.MONTH) + 1);
cal.get(Calendar.MINUTE) 或者 cal.get(Calendar.HOUR_OF_DAY) 輸出的是 int 類型。
一小時後:
第一種方法:
System.out.println(cal.get(Calendar.HOUR_OF_DAY)+1);
第二種方法:改變了 HOUR_OF_DAY 的值:
cal.add(Calendar.HOUR_OF_DAY, 1);
System.out.println(cal.get(Calendar.HOUR_OF_DAY));
6分鐘前,(如果當前時間是2017-01-06 23:32:39):
第一種方法:
System.out.println(cal.get(Calendar.MINUTE) - 6);
第二種方法:
cal.add(Calendar.MINUTE, -6);
int minute = cal.get(Calendar.MINUTE);
System.out.println(minute);
輸出的都是:26
String time1 = fmtDateTime.format(cal.getTime());
System.out.println(time1);
輸出: 2017-01-06 23:26:39
比較兩個時間:
Calendar cal = Calendar.getInstance();
Calendar cal2 = Calendar.getInstance();
cal2.add(Calendar.HOUR, 7); //第二個時間在7小時之後
System.out.println( cal.compareTo(cal2)); //cal 比 cal2 小,輸出 -1 。
計算兩個時間差:
long min = cal2.getTimeInMillis() - cal.getTimeInMillis(); //微妙
long diffHour = min / (1000 * 60 * 60); //換算成小時
System.out.println(diffHour); //輸出 7