Java - 将纳秒转换为HH / MM / SS

时间:2016-01-11 16:51:52

标签: java time nanotime

  long nanoseconds = System.nanoTime();
  long microseconds = nanoseconds / 1000;
  long miliseconds = microseconds / 1000;
  long seconds = miliseconds / 1000;
  long minutes = seconds / 60;
  long hours = minutes / 60;

  System.out.println (hours);

在我的Windows机器上运行~11:35 am时,打印26。一天不能有26个小时,即使有,也不会接近预期的结果11。为什么这不起作用? (我也不想使用任何时间日期库,我知道有更简单的方法)

希望所有格式正确,因为我在手机上。谢谢大家!

1 个答案:

答案 0 :(得分:4)

Oracle Documentation您可以阅读:

  

此方法只能用于测量已用时间,与系统或挂钟时间的任何其他概念无关。返回的值表示纳秒,因为某些固定但是任意时间(可能在将来,因此值可能为负)。该方法提供纳秒精度,但不一定是纳秒精度。不保证值的变化频率。由于数值溢出,跨越大于约292年(263纳秒)的连续调用的差异将无法准确计算经过的时间。

所以你不应该使用这种方法。