我正在尝试使用 Joda-Time 的持续时间类来计算两天之间的确切天数差异。这意味着我希望结果是 25.48 天,而不是仅仅 25 天。现在我有:
private static final double MILLISECONDS_IN_DAY = 86400000;
DateTime today = new DateTime();
Duration dur = new Duration(foo.getExpirationDate(), today);
double diff_days = dur.getMillis()/MILLISECONDS_IN_DAY;
但是我想知道是否有一种方法可以将第一行和最后一行合并成一个只给我一个 double 的行。
最佳答案
您可以使用 Joda-Time 的常量而不是声明您自己的常量来消除第一行。
org.joda.time.DateTimeConstants.MILLIS_PER_DAY
不要忘记,如果您尝试计算另一个日期,可能有更好的方法。日历中的不规则性(例如闰年)在 Joda-Time 中得到了很好的解释。
关于java - Joda-精确十进制天数的持续时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33193697/