我正在寻找一种每次都进行预定 Activity 的方法。例如,在 hh:00:00 我希望 java 执行命令
System.out.println("It's " + hh + " o'clock");
我以前用 Java 类 Timer 和 Calendar 做过类似的事情,现在我遇到了 Joda Time 库,我想知道 Joda Time 中是否有类似于 Timer 类的东西。
最佳答案
这些问题似乎混淆了任务的调度与表示底层 DateTimes 的目的。如前所述,Quartz 将是调度部分的合适解决方案。
为了尽我所能回答您的问题,从 JodaTime 的角度来看,我可以看到 API 文档中没有 Timer 实现。我倾向于将 JodaTime 视为底层机器时间轴的人类表示,即系统时间以可读格式显示的内容。
对于您希望在打印中执行的操作,您可以执行以下操作:
System.out.println("现在是 "+ new DateTime().hourOfDay() + "o'clock");;
如果您在 JodaTime 中寻找更多关于时钟/计时器的信息,我能找到的最接近的东西可能对您有帮助,那就是 DateTimeUtils.getMillis()
使用底层系统实现,请注意您可以为您选择的不同计时器/时钟更改此设置。
/**
* System millis provider.
*/
static class SystemMillisProvider implements MillisProvider {
/**
* Gets the current time.
* @return the current time in millis
*/
public long getMillis() {
return System.currentTimeMillis();
}
}
关于Java 使用 Joda Time 安排 Activity ,例如 Timer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15296700/