gpt4 book ai didi

java - 检查当前时间是午夜还是 Joda Time 的第二天?

转载 作者:塔克拉玛干 更新时间:2023-11-02 07:46:01 41 4
gpt4 key购买 nike

我想让程序检查当前时间是否到了午夜,然后做一些事情。

我已经试过了:

if (DateTime.now() == DateTime.now().withTimeAtStartOfDay()) {
//do stuff
}

问题是大多数时候,这个函数所在的方法可能不会在午夜恰好发生时被调用。有没有办法检查第二天是否发生或类似情况?

我正在尝试使用 if 语句对二进制文件执行每日文件翻转(log4j 不执行二进制文件)。

最佳答案

因为你不知道什么时候会调用你的方法,我建议你保存日期以进行比较并忘记时钟时间部分或者是否已经午夜。

private LocalDate lastCheck = null;

public boolean isNewDay() {
LocalDate today = LocalDate.now();
boolean ret = lastCheck == null || today.isAfter(lastCheck);
lastCheck = today;
return ret;
}

好吧,对于在您的方法调用期间是否已达到午夜的问题,您可以使用以下方案:

DateTime now = DateTime.now();
DateTime startOfDay = now.withTimeAtStartOfDay();
DateTime latest = startOfDay.plusMinutes(1); // tolerance, you can adjust it for your needs

if (new Interval(startOfDay, latest).contains(now)) {
// do stuff
}

关于java - 检查当前时间是午夜还是 Joda Time 的第二天?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26096929/

41 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com