我正在用 Java 处理日期。我正在找出两个日期之间的差异。
public static void main(String[] args) {
final Date futDate = new GregorianCalendar(2012, 8, 15, 0, 0, 0).getTime();
final Date currentDate = new GregorianCalendar().getTime();
long diff = Math.round((futDate.getTime() - currentDate.getTime()) / 1000);
System.out.println(diff / 86400 + " days");
System.out.println((diff % 86400) / 3600 + " hrs");
System.out.println(((diff % 86400) % 3600) / 60 + " mins");
System.out.println((((diff % 86400) % 3600) % 60) % 60 + " secs");
}
输出:
31 days
8 hrs
37 mins
30 secs
即使日期差不到一天,输出也超过 31 天。