TimeUnit用法


TimeUnit是java.util.concurrent包下面的一個類,表示給定單元粒度的時間段

1、主要作用

   時間顆粒度轉換

   延時

2、常用的顆粒度


   
   
  
  
          
  1. TimeUnit.DAYS //天
  2. TimeUnit.HOURS //小時
  3. TimeUnit.MINUTES //分鍾
  4. TimeUnit.SECONDS //秒
  5. TimeUnit.MILLISECONDS //毫秒
  6. TimeUnit.NANOSECONDS //毫微秒
  7. TimeUnit.MICROSECONDS //微秒

3、時間顆粒度轉換


   
   
  
  
          
  1. public long toMillis(long d) //轉化成毫秒
  2. public long toSeconds (long d) //轉化成秒
  3. public long toMinutes (long d) //轉化成分鍾
  4. public long toHours (long d) //轉化成小時
  5. public long toDays (long d) //轉化天

實例:


   
   
  
  
          
  1. package com.app;
  2. import java.util.concurrent.TimeUnit;
  3. public class Test {
  4. public static void main(String[] args) {
  5. //1天有24個小時 1代表1天:將1天轉化為小時
  6. System.out.println( TimeUnit.DAYS.toHours( 1 ) );
  7. //結果: 24
  8. //1小時有3600秒
  9. System.out.println( TimeUnit.HOURS.toSeconds( 1 ));
  10. //結果3600
  11. //把3天轉化成小時
  12. System.out.println( TimeUnit.HOURS.convert( 3 , TimeUnit.DAYS ) );
  13. //結果是:72
  14. }
  15. }

4、延時

  (1)一般的寫法


   
   
  
  
          
  1. package com.app;
  2. public class Test2 {
  3. public static void main(String[] args) {
  4. new Thread( new Runnable() {
  5. @Override
  6. public void run() {
  7. try {
  8. Thread.sleep( 5 * 1000 );
  9. System.out.println( "延時完成了");
  10. } catch (InterruptedException e) {
  11. e.printStackTrace();
  12. }
  13. }
  14. }).start(); ;
  15. }
  16. }

   (2)TimeUnit 寫法


   
   
  
  
          
  1. package com.app;
  2. import java.util.concurrent.TimeUnit;
  3. public class Test2 {
  4. public static void main(String[] args) {
  5. new Thread( new Runnable() {
  6. @Override
  7. public void run() {
  8. try {
  9. TimeUnit.SECONDS.sleep( 5 );
  10. System.out.println( "延時5秒,完成了");
  11. } catch (InterruptedException e) {
  12. e.printStackTrace();
  13. }
  14. }
  15. }).start(); ;
  16. }
  17. }

5、常用時間段


   
   
  
  
          
  1. /**
  2. * 無固定期限
  3. */
  4. NONE( 0, "無固定期限")
  5. /**
  6. * 1秒鍾
  7. */
  8. ,ONE_SEC( 1, "1秒鍾")
  9. /**
  10. * 5秒鍾
  11. */
  12. ,FIVE_SEC( 5, "5秒鍾")
  13. /**
  14. * 10秒鍾
  15. */
  16. ,TEN_SEC( 10, "10秒鍾")
  17. /**
  18. * 30秒鍾
  19. */
  20. ,HALF_A_MIN( 30, "30秒鍾")
  21. /**
  22. * 1分鍾
  23. */
  24. ,ONE_MIN( 60, "1分鍾")
  25. /**
  26. * 5分鍾
  27. */
  28. ,FIVE_MIN( 5 * 60, "5分鍾")
  29. /**
  30. * 10分鍾
  31. */
  32. ,TEN_MIN( 10 * 60, "10分鍾")
  33. /**
  34. * 20分鍾
  35. */
  36. ,TWENTY_MIN( 20 * 60, "20分鍾")
  37. /**
  38. * 30分鍾
  39. */
  40. ,HALF_AN_HOUR( 30 * 60, "30分鍾")
  41. /**
  42. * 1小時
  43. */
  44. ,ONE_HOUR( 60 * 60, "1小時")
  45. /**
  46. * 1天
  47. */
  48. ,ONE_DAY( 24 * 60 * 60, "1天")
  49. /**
  50. * 1個月
  51. */
  52. ,ONE_MON( 30 * 24 * 60 * 60, "1個月")
  53. /**
  54. * 1年
  55. */
  56. ,ONE_YEAR( 365 * 24 * 60 * 60, "1年")


免責聲明!

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



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