TimeUnit用法

2024-01-08 10:43:57

TimeUnit用法

主要作用

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

常用的颗粒度

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

时间颗粒度转换

  • 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 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   
      
        }  
    }  
    

延时

  • 一般的写法

  • 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();  ;  
        }   
    } 
    
  • TimeUnit 写法

  • 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();  ;  
        }  
    } 
    
  • 常用时间段

  •  /** 
         * 无固定期限 
         */  
        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年") 
    
    

文章来源:https://blog.csdn.net/Andrew_Chenwq/article/details/135400212
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。