java.time包下的日期API

1. LocalDateTime类

  • 获取LocalDateTime对象
LocalDateTime localDateTime1 = LocalDateTime.now();
LocalDateTime localDateTime2 = LocalDateTime.now(Clock.systemUTC());
LocalDateTime localDateTime3 = LocalDateTime.now(ZoneId.of("Asia/Shanghai"));
LocalDateTime localDateTime4 = LocalDateTime.of(1994, 3, 26, 20, 13, 14);
LocalDateTime localDateTime5 = LocalDateTime.of(LocalDate.now(), LocalTime.now());
LocalDateTime localDateTime6 = LocalDateTime.parse("1996-08-07T12:34:56");
  • get方法
LocalDateTime localDateTime = LocalDateTime.now();
System.out.println("year:" + localDateTime.getYear());
System.out.println("month:" + localDateTime.getMonth());
System.out.println("date:" + localDateTime.getDayOfMonth());
System.out.println("hour:" + localDateTime.getHour());
System.out.println("minute:" + localDateTime.getMinute());
System.out.println("second:" + localDateTime.getSecond());
  • with方法
LocalDateTime localDateTime1 = LocalDateTime.now();
System.out.println("now:" + localDateTime1);
LocalDateTime localDateTime2 = localDateTime1.withYear(1994).withMonth(3).
        withDayOfMonth(26).withHour(20).withMinute(13).withSecond(14);
System.out.println("revised:" + localDateTime2);
  • 时间运算方法
LocalDateTime localDateTime = LocalDateTime.now();
System.out.println(localDateTime.plusDays(10).minusMonths(1));

2. ZonedDateTime类

  • 获取ZonedDateTime对象
ZonedDateTime zonedDateTime1 = ZonedDateTime.now();
ZonedDateTime zonedDateTime2 = ZonedDateTime.now(Clock.systemUTC());
ZonedDateTime zonedDateTime3 = ZonedDateTime.now(ZoneId.of("Asia/Shanghai"));
ZonedDateTime zonedDateTime4 = ZonedDateTime.of(1994, 3, 26, 20,
        13, 14, 22, ZoneId.of("Asia/Tokyo"));
ZonedDateTime zonedDateTime5 = ZonedDateTime.of(LocalDateTime.now(), ZoneId.of("Asia/Shanghai"));
ZonedDateTime zonedDateTime6 = ZonedDateTime.parse("1996-08-07T22:11+33:00[Asia/Shanghai]");
  • get方法、with方法、时间运算方法(与DateTime基本一致)

3. DateTimeFormatter类(该类位于java.time.format包下)

DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("YYYY.MM.dd EEE HH:mm:ss", Locale.CHINA);
System.out.println(dateTimeFormatter.format(ZonedDateTime.now()));

4. 类之间的关系图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值