如何在java或groovy中找到两个日期之间的天数?
我有一个使用以下逻辑来计算天与日之间的差异的方法。
long diff = milliseconds2 - milliseconds1;
long diffDays = diff / (24 * 60 * 60 * 1000);
但我想为前任,应该返回我天,无论秒或毫秒考虑。我怎样才能做到这一点?9th feb 2011 to 19th feb 2011
11
我有一个使用以下逻辑来计算天与日之间的差异的方法。
long diff = milliseconds2 - milliseconds1;
long diffDays = diff / (24 * 60 * 60 * 1000);
但我想为前任,应该返回我天,无论秒或毫秒考虑。我怎样才能做到这一点?9th feb 2011 to 19th feb 2011
11
对于您要求的时髦解决方案,您应该考虑使用以下命令:
use(groovy.time.TimeCategory) {
def duration = date1 - date2
println "days: ${duration.days}, Hours: ${duration.hours}"
}
它非常容易理解,可读性极强。您要求举例说明如何在计算两个日期之间的日期的简单方法中使用它。这是你的例子。
class Example {
public static void main(String[] args) {
def lastWeek = new Date() - 7;
def today = new Date()
println daysBetween(lastWeek, today)
}
static def daysBetween(def startDate, def endDate) {
use(groovy.time.TimeCategory) {
def duration = endDate - startDate
return duration.days
}
}
}
如果运行此示例,它将打印您 。您还可以通过使用 和 启用反转日期来增强此方法。7
before()
after()