我使用TimeStamp类将秒转换为日,小时,分钟,秒。我使用下面的代码
public static void calculateTime(long seconds) {
int day = (int)TimeUnit.SECONDS.toDays(seconds);
long hours = TimeUnit.SECONDS.toHours(seconds) - TimeUnit.SECONDS.toHours(TimeUnit.SECONDS.toDays(seconds));
long minute = TimeUnit.SECONDS.toMinutes(seconds) - TimeUnit.SECONDS.toMinutes(TimeUnit.SECONDS.toHours(seconds));
long second = TimeUnit.SECONDS.toSeconds(seconds) - TimeUnit.SECONDS.toSeconds(TimeUnit.SECONDS.toMinutes(seconds));
System.out.println("Day " + day + " Hour " + hours + " Minute " + minute + " Seconds " + second);
}
但我没有得到正确的结果。
例如,当我把这个方法称为calculateTime(3600),它给我的结果为第0天1小时60秒3540而不是第0小时1分钟0秒0。
我的逻辑是什么错误?请帮帮我。