我看了一下TimeUnit和toMillis()方法.

public long toMillis(long paramLong)

{

throw new AbstractMethodError();

}

toMillis()方法除了抛出AbstractMethodError异常之外什么都不做.

那么,toMillis()方法如何将秒,分钟等转换为毫秒?

解决方法:

打开TimeUnit并查看里面的常量……

/**

* Time unit representing one thousandth of a microsecond

*/

NANOSECONDS {

public long toNanos(long d) { return d; }

public long toMicros(long d) { return d/(C1/C0); }

public long toMillis(long d) { return d/(C2/C0); }

public long toSeconds(long d) { return d/(C3/C0); }

public long toMinutes(long d) { return d/(C4/C0); }

public long toHours(long d) { return d/(C5/C0); }

public long toDays(long d) { return d/(C6/C0); }

public long convert(long d, TimeUnit u) { return u.toNanos(d); }

int excessNanos(long d, long m) { return (int)(d - (m*C2)); }

},

/**

* Time unit representing one thousandth of a millisecond

*/

MICROSECONDS {

public long toNanos(long d) { return x(d, C1/C0, MAX/(C1/C0)); }

public long toMicros(long d) { return d; }

public long toMillis(long d) { return d/(C2/C1); }

public long toSeconds(long d) { return d/(C3/C1); }

public long toMinutes(long d) { return d/(C4/C1); }

public long toHours(long d) { return d/(C5/C1); }

public long toDays(long d) { return d/(C6/C1); }

public long convert(long d, TimeUnit u) { return u.toMicros(d); }

int excessNanos(long d, long m) { return (int)((d*C1) - (m*C2)); }

},

正如您将看到的,枚举器TimeUnit中的每个常量

NANOSECONDS,MICROSECONDS等实现匿名方法,使您可以间接访问toMillis(),因此这种方法

public long toMillis(long duration) {

throw new AbstractMethodError();

}

永远不会被您的代码直接访问…

标签:java,timeunit

来源: https://codeday.me/bug/20190715/1465432.html

java timeunit_java – 了解TimeUnit相关推荐

  1. java timeunit_Java TimeUnit使用

    TimeUnit TimeUnit是java.util.concurrent包下面的一个类,表示给定单元粒度的时间段. 常用的颗粒度 TimeUnit.DAYS //天 TimeUnit.HOURS ...

  2. java timeunit_java并发之TimeUnit理解

    TimeUnit是java.util.concurrent包下面的一个类,TimeUnit提供了可读性更好的线程暂停操作,通常用来替换Thread.sleep(),在很长一段时间里Thread的sle ...

  3. java.util.concurrent.TimeUnit

    JavaAPI:https://docs.oracle.com/javase/8/docs/api/index.html 1 TimeUnit api:https://docs.oracle.com/ ...

  4. java的time_Java TimeUnit使用

    TimeUnit TimeUnit是java.util.concurrent包下面的一个类,表示给定单元粒度的时间段. 常用的颗粒度 TimeUnit.DAYS //天 TimeUnit.HOURS ...

  5. java timeunit_TimeUnit类 java.util.concurrent.TimeUnit

    TimeUnit是什么? TimeUnit是java.util.concurrent包下面的一个类,表示给定单元粒度的时间段 主要作用 时间颗粒度转换 延时 常用的颗粒度 TimeUnit.DAYS ...

  6. java timeunit_java并发之TimeUnit

    一.TimeUnit和Thread.sleep() TimeUnit是java.util.concurrent包下面的一个类,TimeUnit提供了可读性更好的线程暂停操作,通常用来替换Thread. ...

  7. java并发之TimeUnit

    2019独角兽企业重金招聘Python工程师标准>>> 一.TimeUnit和Thread.sleep() TimeUnit是java.util.concurrent包下面的一个类, ...

  8. java time sleep_Java TimeUnit sleep()用法及代码示例

    TimeUnit类的sleep()方法用于使用此时间单位执行Thread.sleep.这是一种方便的方法,可以将时间参数睡眠为Thread.sleep方法所需的形式. 用法: public void ...

  9. 学习记录466@Java Calender类、TimeUnit类以及 ScheduledExecutorService实现定时任务

    为什么要将Calender.TimeUnit与ScheduledExecutorService一起记录呢,因为ScheduledExecutorService实现定时任务需要用到Calender.Ti ...

最新文章

  1. 【ruby项目,语言提交检查(一)】怎样高速学习ruby ?
  2. Winform DataGridView列的单元格中动态添加图片和文字
  3. python 实例对象 浅拷贝_Python3 入门教程——浅拷贝深拷贝差别
  4. java 逗号运算符_Java 运算符
  5. 在C代码调用C++代码
  6. 【Spring】SpringMVC 作用域传值的 4 种方式
  7. [LeetCode] NO.292 Nim Game
  8. 【CodeForces - 357C 】Knight Tournament(并查集 或 STLset)
  9. WebService的基本概念:java webservice,什么是webservice
  10. [重磅,建议收藏]JAVA集合框架中的常用集合及其特点、适用场景、实现原理简介...
  11. 樊登读书赋能读后感_一场人均4万元的知识盛宴,樊登直播首秀到底讲了什么?...
  12. 【GIT】git 提交代码正确步骤
  13. H5调用微信扫一扫识别二维码
  14. 日本的美景,从谷歌卫星地图上就可以一撇究竟
  15. Google guava之Multimap简介说明
  16. 重新连接 到 时出错 Microsoft Windows Network:本地设备名已在使用中
  17. Python获取二维数组的行列数
  18. ege寻宝挑战游戏(C、C++)(大一上游戏项目)
  19. 大家在人生低谷时有多惨,怎么熬过来的(二)
  20. 常见的分布式数据库有哪些

热门文章

  1. 渗透测试SQL注入——Sqlilabs关卡详解
  2. linux core文件GDB调试方法
  3. 算法设计与分析基础 第六章谜题
  4. Discarding record on action DISCARD on error 0
  5. 计算机科学计数法符号,科学计数法怎么表示
  6. 这是一片求助帖——关于梆梆加固企业版的托克修复问题
  7. MIPAV - Talairach ACPC transform
  8. Android程序员必看,资深Android面试题
  9. 学Python用什么系统?
  10. 精选免费论文翻译工具