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

示列

 /**
     * @Description: 轉換示列
     * @Author: zhuyang
     * @Date: 2022/1/8 14:54
     * @return: void
     **/
    public void convert(){
        //將1天轉換為小時
        System.out.println("將1天轉換為小時:  "+TimeUnit.DAYS.toHours(1));
        //答案:24
        //將1小時轉換為秒
        System.out.println("將1小時轉換為秒:  "+TimeUnit.HOURS.toSeconds(1));
        //答案: 3600
        //將3天轉換為小時
        System.out.println("將3天轉換為小時: "+TimeUnit.HOURS.convert(3,TimeUnit.DAYS));
        //答案: 72
    }

延時

 /**
     * @Description: 睡眠方式
     * @Author: zhuyang
     * @Date: 2022/1/8 15:04
     * @return: void
     **/
    public void sleep(){
        new Thread(new Runnable() {
            @Override
            public void run() {
                long currentTimeMillis = System.currentTimeMillis();
                try {
                    TimeUnit.SECONDS.sleep(2);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }

                System.out.println("睡眠了幾秒鍾:"+TimeUnit.MILLISECONDS.toSeconds(System.currentTimeMillis()-currentTimeMillis));
            }
        }).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年")  

Gitee地址

https://gitee.com/zhuayng/foundation-study/blob/develop/JavaBasis/JUC/src/main/java/com/yxkj/juc/other/TimeUnitDemo.java

轉載

https://www.cnblogs.com/jpfss/p/9599950.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM