简介:
TimeUnit中主要是一些时间单位的枚举类,这些枚举类实现了TimeUnit中定义的一些方法,其实就是进行不同时间单位之间的转化:
toNanos,toMicros,toMillis,toSeconds,toMinutes,toHours,toDays,convert,excessNanos
举例说明:
NANOSECONDS { public long toNanos(long d) { return d; } // 转成纳秒 public long toMicros(long d) { return d/(C1/C0); } // 转成微秒 public long toMillis(long d) { return d/(C2/C0); } // 转成毫秒 public long toSeconds(long d) { return d/(C3/C0); } // 转成秒 public long toMinutes(long d) { return d/(C4/C0); } // 转成分钟 public long toHours(long d) { return d/(C5/C0); } // 转成小时 public long toDays(long d) { return d/(C6/C0); } // 转成天 public long convert(long d, TimeUnit u) { return u.toNanos(d); } // 将单位为u的时间d转成纳秒 int excessNanos(long d, long m) { return (int)(d - (m*C2)); } // 用于超时等待(sleep、join、wait),其中m参数的单位为毫秒,若d为毫秒以下,则计算剩余需要等待时间,否则返回0,即剩余需要等待的纳秒数为0 }