用java写一个时间工具类 需要入参两个localdatetime,如果他们的差值小于一个小时,那么返回差值,如果大于一小时返回时间小的那个时间,入参跟返回类型都是localdatetime
时间: 2024-03-21 20:41:04 浏览: 52
好的,以下是一个可以实现您要求的Java时间工具类代码:
```java
import java.time.Duration;
import java.time.LocalDateTime;
public class TimeUtil {
public static LocalDateTime getEarlierTime(LocalDateTime time1, LocalDateTime time2) {
Duration duration = Duration.between(time1, time2);
// 如果时间差小于1小时,返回时间差
if (duration.toHours() < 1) {
return duration.isNegative() ? time2.minus(duration) : time1.plus(duration);
}
// 如果时间差大于等于1小时,返回较早的时间
return time1.compareTo(time2) < 0 ? time1 : time2;
}
}
```
上述代码中的 `getEarlierTime` 方法接收两个 LocalDateTime 类型的参数 `time1` 和 `time2`,分别表示两个时间。方法中首先使用 Duration 类计算两个时间差,判断两个时间差是否小于1小时,如果是则返回时间差;否则返回较早的时间。
请注意,上述代码中的 `TimeUtil` 类需要根据您的实际需求进行修改和完善。另外,在使用该工具类时,需要先将其导入到您的Java项目中,然后在方法中调用 `getEarlierTime` 方法即可。
阅读全文