java 8日期相關類 Instant:時間戳 Duration:持續時間,時間差 LocalDate:只包含日期,比如:2016 10 20 LocalTime:只包含時間,比如:23:12:10 LocalDateTime:包含日期和時間,比如:2016 10 20 23:14:21 Perio ...
java 8日期相關類
Instant:精確到納秒的時間戳
Duration:處理有關基於時間的時間量
LocalDate:只包含日期,比如:2016-10-20
LocalTime:只包含時間,比如:23:12:10
LocalDateTime:包含日期和時間,比如:2016-10-20 23:14:21
Period:處理有關基於時間的日期數量
ZoneOffset:時區偏移量,比如:+8:00
ZonedDateTime:帶時區的時間
Clock:時鐘,比如獲取目前美國紐約的時間
日期格式化類:DateTimeFormatter
示例:
DateTimeFormatter formatter1 = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
LocalDateTime localDateTime = LocalDateTime.now();
System.out.printf("localDateTime:" + localDateTime.format(formatter1) + "\n");
DateTimeFormatter formatter2 = DateTimeFormatter.ofPattern("yyyy-MM-dd");
LocalDate localDate = LocalDate.now();
System.out.printf("localDate:" + localDate.format(formatter2) + "\n");
System.out.printf("本月第一天:" + localDate.withDayOfMonth(1) + "\n");
System.out.printf("本月第一天:" + localDate.with(TemporalAdjusters.firstDayOfMonth()) + "\n");
Clock clock = Clock.systemDefaultZone();
Instant instant=clock.instant();
System.out.printf("Instant:" + instant);
java8 之前日期相關類
Calendar
Date
Timestamp
例:
Date date = new Date(); // 獲取當前的系統時間
System.out.println("年份:"+ date.getYear());
Calendar calendar = Calendar.getInstance(); //獲取當前的系統時間。
System.out.println("年:"+ calendar.get(Calendar.YEAR));
System.out.println("月:"+ (calendar.get(Calendar.MONTH)+1)); System.out.println("日:"+ calendar.get(Calendar.DATE));
System.out.println("時:"+ calendar.get(Calendar.HOUR_OF_DAY));
System.out.println("分:"+ calendar.get(Calendar.MINUTE));
System.out.println("秒:"+ calendar.get(Calendar.SECOND));
日期格式化類:SimpleDateFormat
例:
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.printf("date:" + format.format(new Date()) + "\n");
Calendar calendar = Calendar.getInstance();
System.out.printf("calendar:" + format.format(calendar.getTime()) + "\n");