java.util.concurrent.TimeUtil类

TimeUnit是java.util.concurrent包下面的一个枚举类,TimeUnit提供了可读性更好的线程暂停操作、不同时间之间的转换操作。

它包含 7 个枚举实例

NANOSECONDS (毫微秒,  千分之一微秒)
public static final TimeUnit NANOSECONDS

MICROSECONDS (微秒,  千分之一毫秒)
public static final TimeUnit MICROSECONDS

MILLISECONDS (毫秒,  千分之一秒)
public static final TimeUnit MILLISECONDS

SECONDS (秒)
public static final TimeUnit SECONDS

MINUTES (分钟)
public static final TimeUnit MINUTES

HOURS (小时)
public static final TimeUnit HOURS

DAYS (天)
public static final TimeUnit DAYS

可以对不同的时间进行转换:

// 1秒转为 毫微秒
        TimeUnit.SECONDS.toNanos(1L);
        // 1秒转为 微秒
        TimeUnit.SECONDS.toMicros(1L);
        // 1秒转为 毫秒
        TimeUnit.SECONDS.toMillis(1L);
        // 100秒转为 分钟
        TimeUnit.SECONDS.toMinutes(100L);

        TimeUnit.SECONDS.toHours(100L);
        TimeUnit.SECONDS.toDays(100L);

        //也可以利用convert()方法进行等价转化
        //从较细粒度到较粗粒度的舍位转换,这样会失去精确性。例如,将 999 毫秒转换为秒的结果为 0。
        // 使用参数从较粗粒度到较细粒度转换,如果参数为负,则在数字上溢出至 Long.MIN_VALUE,
        // 如果为正,则为 Long.MAX_VALUE。
        // 1秒转为 毫微秒
        TimeUnit.NANOSECONDS.convert(1L,TimeUnit.SECONDS);
        // 1秒转为 微秒
        TimeUnit.MICROSECONDS.convert(1L,TimeUnit.SECONDS);
        // 1秒转为 毫秒
        TimeUnit.MILLISECONDS.convert(1L,TimeUnit.SECONDS);


        //返回 枚举 数组
        TimeUnit[] timeUnits=TimeUnit.values();

        //返回一个 TimeUnit
        //返回带有指定名称的该类型的枚举常量。
        // 字符串必须与用于声明该类型的枚举常量的标识符完全匹配。(不允许有多余的空格。)
        TimeUnit timeUnit=TimeUnit.valueOf("SECONDS");


        //对象等待超时 1秒  ,Object.wait() 方法所需格式的便捷方法。
        //如果小于等于 0,则根本不会等待。
        try{
            TimeUnit.SECONDS.timedWait(new Object(),1L);
        }catch (InterruptedException e){

        }


        //线程等待超时  1秒  ,Thread.join() 方法所需格式的便捷方法。
        //如果小于等于 0,则根本不会等待。
        try{
            TimeUnit.SECONDS.timedJoin(new Thread(),1L);
        }catch (InterruptedException e){

        }


        //线程休眠时间 1秒, Thread.sleep() 方法所需格式的便捷方法
        //如果小于等于 0,则根本不会休眠。
        try{
            TimeUnit.SECONDS.sleep(1L);
        }catch (InterruptedException e){

        }

参考文章:
http://www.cnblogs.com/shamo89/p/7055094.html

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值