再见c罗再见梅西
TimeUnit类表示给定粒度单位的持续时间,还提供了转换为不同单位的实用方法以及执行计时延迟的方法。
TimeUnit是一个具有七个粒度级别的枚举: DAYS,HOURS,MICROSECONDS,MILLISECONDS,MINUTES,NANOSECONDS和SECONDS 。
我发现有用的第一个功能是 convert 方法。 使用这种方法,您可以告别典型:
私有静态最终int FIVE_SECONDS_IN_MILLIS = 1000 * 5;
像这样:
长持续时间= TimeUnit.MILLISECONDS.convert(5,TimeUnit.SECONDS);
但是也存在以更好的可读性方法进行的等效操作。 例如,相同的转换可以表示为:
长持续时间= TimeUnit.SECONDS.toMillis(5);
第二组真正有用的操作是与停止当前线程有关的操作。
例如,您可以使用方法Hibernate当前线程 :
TimeUnit.MINUTES.sleep(5);
代替:
Thread.sleep(5 * 60 * 1000);
但是您也可以将其与join一起使用,并等待超时。
线程t = new Thread(); TimeUnit.SECONDS.timedJoin(t,5);
因此,正如我们所看到的, TimeUnit类虽然在表达能力方面可以与以前相同,但是可以采用更时尚的方式。 请注意,您还可以使用静态导入,并且代码将更具可读性。
参考: 再见,再见,5 * 60 * 1000 //“五分钟,再见,再见”,来自我们的JCG合作伙伴 Alex Soto,来自“ 一个罐子统治他们所有”博客。
翻译自: https://www.javacodegeeks.com/2012/06/bye-bye-5-60-1000-five-minutes-bye-bye.html
再见c罗再见梅西