1、TimeUnit介绍
位于这个包下
import java.util.concurrent.TimeUnit;
2、使用
一般比如多少分钟转多少毫秒、多少秒转多少毫秒、多少小时转多少分钟,还可以使用线程休息的方法, 底层还是用Thread.sleep()实现,代码可读性好点,我们可以使用这个封装好的类。
TimeUnit.SECONDS.sleep(4);
TimeUnit.SECONDS.toMillis(3)
3、测试Demo
public class Sqrt { public static void main(String[] args) { System.out.println(mySqrt(110)); try { System.out.println("TimeUnit.SECONDS.sleep start"); TimeUnit.SECONDS.sleep(4); System.out.println("TimeUnit.SECONDS.sleep end"); //3秒转成毫秒 System.out.println(TimeUnit.SECONDS.toMillis(3)); //3分钟转成毫秒 System.out.println(TimeUnit.MINUTES.toMillis(3)); //3分钟转成秒 System.out.println(TimeUnit.MINUTES.toSeconds(3)); //3小时转成分钟 System.out.println(TimeUnit.HOURS.toMinutes(3)); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } }
sleep源代码实现
public void sleep(long timeout) throws InterruptedException { if (timeout > 0) { long ms = toMillis(timeout); int ns = excessNanos(timeout, ms); Thread.sleep(ms, ns); }
4、运行结果
10 TimeUnit.SECONDS.sleep start TimeUnit.SECONDS.sleep end 3000 180000 180 180