美文网首页
Java TimeUnit使用

Java TimeUnit使用

作者: 有苦向瓜诉说 | 来源:发表于2017-11-19 16:46 被阅读1294次

TimeUnit

TimeUnit是java.util.concurrent包下面的一个类,表示给定单元粒度的时间段。

常用的颗粒度

TimeUnit.DAYS          //天
TimeUnit.HOURS         //小时
TimeUnit.MINUTES       //分钟
TimeUnit.SECONDS       //秒
TimeUnit.MILLISECONDS  //毫秒

1.颗粒度转换

public long toMillis(long d)    //转化成毫秒
public long toSeconds(long d)  //转化成秒
public long toMinutes(long d)  //转化成分钟
public long toHours(long d)    //转化成小时
public long toDays(long d)     //转化天
import java.util.concurrent.TimeUnit;

public class TimeUnitTest {

    public static void main(String[] args) {
        //convert 1 day to 24 hour
        System.out.println(TimeUnit.DAYS.toHours(1));
        //convert 1 hour to 60*60 second.
        System.out.println(TimeUnit.HOURS.toSeconds(1));
        //convert 3 days to 72 hours.
        System.out.println(TimeUnit.HOURS.convert(3, TimeUnit.DAYS));
    }

}

2.延时,可替代Thread.sleep()。

import java.util.concurrent.TimeUnit;

public class ThreadSleep {

    public static void main(String[] args) {
        Thread t = new Thread(new Runnable() {
            private int count = 0;

            @Override
            public void run() {
                for (int i = 0; i < 10; i++) {
                    try {
                        // Thread.sleep(500); //sleep 单位是毫秒
                        TimeUnit.SECONDS.sleep(1); // 单位可以自定义,more convinent
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
                    count++;
                    System.out.println(count);
                }
            }
        });
        t.start();
    }
}

相关文章

网友评论

      本文标题:Java TimeUnit使用

      本文链接:https://www.haomeiwen.com/subject/wicpvxtx.html