java8新api,Java8中新增的日期和时间API

1.计算时间间隔

Java8之前,我们想要确定一个方法的运行时间长度,可以这样:

long start = System.currentTimeMillis();

doSomething();

long end = System.currentTimeMillis();

System.out.println(end-start);

Java8中,可以这样

Instant start = Instant.now();

doSomething();

Instant end = Instant.now();

Duration time = Duration.between(start, end);

long seconds = time.getSeconds();//秒表示

long millis = time.toMillis();//毫秒表示

System.out.println(seconds);

System.out.println(millis);

可以轻松选择用纳秒、毫秒、秒、分钟、小时或者天来表示时间间隔的单位。

可以这样来比较第一个方法是不是比第二个执行得更快:

Instant start = Instant.now();

doSomething();

Instant end = Instant.now();

Duration time = Duration.between(start, end);

Instant start2 = Instant.now();

doSomething2();

Instant end2 = Instant.now();

Duration time2 = Duration.between(start2, end2);

boolean fast = time.minus(time2).isNegative();

System.out.println(fast);

2.本地日期和时间

LocalDate now = LocalDate.now();

LocalDate date = LocalDate.of(2005, 5, 10);

LocalDate date2 = LocalDate.of(2003, Month.FEBRUARY, 5);

System.out.println(now);

System.out.println(date);

System.out.println(date2);

LocalTime now2 = LocalTime.now();

LocalTime time = LocalTime.of(22, 50, 56);

System.out.println(now2);

System.out.println(time);

3.日期格式化

//按照内置的不同方式格式化

String format = DateTimeFormatter.ISO_LOCAL_DATE.format(LocalDate.now());

String format2 = DateTimeFormatter.ISO_LOCAL_TIME.format(LocalTime.now());

String format3 = DateTimeFormatter.ISO_DATE.format(LocalDateTime.now());

String format4 = DateTimeFormatter.ISO_INSTANT.format(Instant.now());

System.out.println(format);

System.out.println(format2);

System.out.println(format3);

System.out.println(format4);

//按照标准格式格式化

DateTimeFormatter formatter = DateTimeFormatter.ofLocalizedDate(FormatStyle.FULL);

String format5 = formatter.format(LocalDateTime.now());

System.out.println(format5);

//按照指定方式格式化

DateTimeFormatter pattern = DateTimeFormatter.ofPattern("yyyy-MM-dd E HH:mm:ss");

String format6 = pattern.format(LocalDateTime.now());

System.out.println(format6);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值