TimeUnit用法

来源:互联网 发布:网络暴力调查报告配图 编辑:程序博客网 时间:2024/06/05 21:56

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

1、主要作用

   时间颗粒度转换

   延时

2、常用的颗粒度

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

3、时间颗粒度转换

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)     //转化天 

实例:

package com.app;    import java.util.concurrent.TimeUnit;    public class Test {        public static void main(String[] args) {          //1天有24个小时    1代表1天:将1天转化为小时          System.out.println( TimeUnit.DAYS.toHours( 1 ) );                    //结果: 24                      //1小时有3600秒          System.out.println( TimeUnit.HOURS.toSeconds( 1 ));                    //结果3600                              //把3天转化成小时          System.out.println( TimeUnit.HOURS.convert( 3 , TimeUnit.DAYS ) );          //结果是:72         }  }  

4、延时

  (1)一般的写法

package com.app;    public class Test2 {        public static void main(String[] args) {            new Thread( new Runnable() {                @Override              public void run() {                  try {                      Thread.sleep( 5 * 1000 );                      System.out.println( "延时完成了");                  } catch (InterruptedException e) {                      e.printStackTrace();                  }              }          }).start();  ;      }        } 

   (2)TimeUnit 写法

package com.app;    import java.util.concurrent.TimeUnit;    public class Test2 {        public static void main(String[] args) {            new Thread( new Runnable() {                @Override              public void run() {                  try {                      TimeUnit.SECONDS.sleep( 5 );                      System.out.println( "延时5秒,完成了");                  } catch (InterruptedException e) {                      e.printStackTrace();                  }              }          }).start();  ;      }        } 

5、常用时间段

    /**      * 无固定期限      */      NONE(0, "无固定期限")            /**      * 1秒钟      */      ,ONE_SEC(1, "1秒钟")        /**      * 5秒钟      */      ,FIVE_SEC(5, "5秒钟")        /**      * 10秒钟      */      ,TEN_SEC(10, "10秒钟")        /**      * 30秒钟      */      ,HALF_A_MIN(30, "30秒钟")        /**      * 1分钟      */      ,ONE_MIN(60, "1分钟")        /**      * 5分钟      */      ,FIVE_MIN(5 * 60, "5分钟")        /**      * 10分钟      */      ,TEN_MIN(10 * 60, "10分钟")            /**      * 20分钟      */      ,TWENTY_MIN(20 * 60, "20分钟")        /**      * 30分钟      */      ,HALF_AN_HOUR(30 * 60, "30分钟")        /**      * 1小时      */      ,ONE_HOUR(60 * 60, "1小时")        /**      * 1天      */      ,ONE_DAY(24 * 60 * 60, "1天")        /**      * 1个月      */      ,ONE_MON(30 * 24 * 60 * 60, "1个月")        /**      * 1年      */      ,ONE_YEAR(365 * 24 * 60 * 60, "1年")