Java 8 中 常用的 LocalDateTime 操作

例如,获取当天的初始时间和结束时间,或者计算时间差。有时,根据业务需求,我们可能需要获取上个月的时间,或者推迟几分钟、几小时的时间等。在Java 8之后,官方提供了现成的时间工具来方便我们使用。接下来,让我们一起来探索一下这些工具吧。输出:在上面的代码中,最关键的是minusMinutes和plusMinutes这...
Java 8 中 常用的 LocalDateTime 操作
Java开发中,我们经常需要进行各种时间格式的转换,以下是一些常见操作。

例如,获取当天的初始时间和结束时间,或者计算时间差。有时,根据业务需求,我们可能需要获取上个月的时间,或者推迟几分钟、几小时的时间等。在Java 8之后,官方提供了现成的时间工具来方便我们使用。接下来,让我们一起来探索一下这些工具吧。

输出:

在上面的代码中,最关键的是minusMinutes和plusMinutes这两个方法。从字面上看,它们的意思不难理解。同样地,我们可以在工具类中查看其他的方法。

在plusMinutes方法上右击,选择“转到”,然后选择“实现”、“声明”或“用例”,就可以进入到LocalDateTime.java类中。在Mac上,按快捷键command + 7;在Windows上,按快捷键Alt + 7,会显示类的主结构。

从下图中,我们可以看到官方提供了许多现有的方法,基本满足了我们日常的使用需求。

常用方法简介:

上面的方法大多容易理解,其中minusNanos方法可以减去指定的纳秒数,我们可以通过以下实践来了解它:

输出:

1毫秒等于100万纳秒。

输出:

plusNanos和其他相关方法就不演示了,相信大家能够举一反三。

获取自定义时间:

现在业务需要我们获取当前小时开始的时间,例如2022-10-01 10:00:00。

输出:

主要的代码是:

tempTime = tempTime.withMinute(0).withSecond(0).withNano(0);

注意:tempTime操作完成后需要返回值接收,否则不会改变原有的值。

可以看到,这里使用了三个with方法。

有人可能会尝试给分钟设置61...,我们来试一下,会报错如下:

比较时间前与后:

现在业务需要我们判断传入的参数不能大于当前时间,我们可以通过以下方法和示例来解决这个问题:

输出:2024-08-10
mengvlog 阅读 7 次 更新于 2025-07-19 14:04:13 我来答关注问题0
檬味博客在线解答立即免费咨询

Java相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部