发现一个不错的时间工具
java.util.concurrent.TimeUnit
该类是个枚举类,实现了
Serializable,
Comparable<
TimeUnit>接口。
DAYS,HOURS,MINUTES,SECONDS,MILLISECONDS,MICROSECONDS,NANOSECONDS
分别表示:天、小时、分、秒、毫秒、微妙、纳秒
当然一般用到毫秒就够了。
1、相互转换:
有两种方法,一种是使用toXX(Long duration)
如:TimeUnit.SECONDS.toMillis(1);
另一种是通过
convert(long sourceDuration,TimeUnit sourceUnit);
如:TimeUnit.HOURS.convert(59L, TimeUnit.MINUTES)把分转换成小时。
遗憾的是转换不能进行四舍五入,会造成精度丢失。
2、此类
sleep(long timeout),
timedJoin(
Thread thread, long timeout)方法
避免了Thread.sleep(long mill)和
Thread.
join(long millis)的时间转换。