java.util.concurrent.TimeUnit

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


1 TimeUnit

api:https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/TimeUnit.html

TimeUnit是java.util.concurrent包下面的一个类;TimeUnit 是Java枚举应用场景中最好的例子之一,所有TimeUnit都是枚举实例;

TimeUnit提供了更加优雅的线程sleep写法;TimeUnit还提供了各种时间单位转换的方法;

NANOSECONDS     //毫微秒  十亿分之一秒【1微秒/1000】
MICROSECONDS    //微秒    一百万分之一秒【1毫秒/1000】
MILLISECONDS    //毫秒    千分之一秒    
SECONDS         //秒
MINUTES         //分钟
HOURS           //小时
DAYS            //天
//NANOSECONDS MICROSECONDS MILLISECONDS SECONDS MINUTES HOURS DAYS 
Arrays.stream(TimeUnit.values()).forEach((item -> System.out.print(item + " ")));

2 线程睡眠

Modifier and TypeMethod and Description
static voidsleep(long millis)Causes the currently executing thread to sleep (temporarily cease execution) for the specified number of milliseconds, subject to the precision and accuracy of system timers and schedulers.
static voidsleep(long millis, int nanos)Causes the currently executing thread to sleep (temporarily cease execution) for the specified number of milliseconds plus the specified number of nanoseconds, subject to the precision and accuracy of system timers and schedulers.

TimeUnit提供了更加优雅的线程睡眠写法

//休眠40分种的三种写法
//
Thread.sleep(2400000);
//
Thread.sleep(40 * 60 * 1000);
// 可读性增强了
TimeUnit.MINUTES.sleep(40);

3 时间单位转换

//sleep 40分组
Thread.sleep(2400000);Thread.sleep(TimeUnit.MINUTES.toMillis(40));
Modifier and TypeMethod and Description
longconvert(long sourceDuration, TimeUnit sourceUnit)Converts the given time duration in the given unit to this unit.
//天转化成小时
TimeUnit.HOURS.convert(3, TimeUnit.DAYS); //72
//小时转化为秒
TimeUnit.SECONDS.convert(1, TimeUnit.HOURS);//3600
Modifier and TypeMethod and Description
longtoDays(long duration)Equivalent to DAYS.convert(duration, this).
//天转化为小时
TimeUnit.DAYS.toHours(3); //72
//小时转化为秒
TimeUnit.HOURS.toSeconds(1); //3600

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/555435.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

c语言数组宏定义标识符,C语言学习笔记--预编译/宏定义/数组/参数传递/函数指针...

目录预编译值传递、指针传递、引用传递数组typedef 函数指针预编译预编译又叫预处理。预编译不是编译,而是编译前的处理。这个操作是在正式编译之前由系统自动完成的。#define 和 #include 一样,都是以“#”开头的。凡是以“#”开头的均为预处理指令。#d…

凑钱系统C语言,C语言课程设计报告书凑钱程序.doc

C语言课程设计报告书凑钱程序西北师范大学知行学院计算机与电子信息工程系课程设计报告书课程名称: C语言程序设计专 业: 电子信息工程课题名称: 凑钱程序班 级: 13电本班学 号: 201392170114姓 名: 秦波指导教师: 柴西林二○一三 ——二○一四 学年 第一学期基于C语…

SpringBoot使用jasypt加解密密码

在我们的服务中不可避免的需要使用到一些秘钥(数据库、redis等);使用过SpringBoot配置文件的朋友都知道,资源文件中的内容通常情况下是明文显示,安全性就比较低一些。打开application.properties或application.yml&…

android 写字体投影,android-给字体设置投影

1,在代码中添加文字阴影TextView 有一个方法/*** Gives the text a shadow of the specified radius and color, the specified* distance from its normal position.** attr ref android.R.styleable#TextView_shadowColor* attr ref android.R.styleable#TextView…

Java包装类中的equals方法

基本数据类型包装类中的equals方法用于比对相同包装类中的值是否相等,如果两者比较的包装类类型不同则返回false; 1、基本型和基本型封装型进行“”运算符的比较,基本型封装型将会自动拆箱变为基本型后再进行比较, 2.两个包裝类型…

android 开源图表动画,Android 图表开发开源库MPAndroidChart-Go语言中文社区

上面是APP中实现的效果图(点击可以放大查看)图1的效果不是用这个实现的,如果感兴趣可以参考我这篇文章 Android渐变圆环总体来说,MPAndroidChart可能是目前Android 开发最好用的一个三方库了,功能非常强大,集成简单。直接导入作为…

电脑开启防火墙后ping不通 及 开启防火墙后,不能远程的解决办法

有些情况下电脑需要开防火墙但是又希望能被远程或者ping通。 一、先查看电脑的网络类型(第二步中打开对应网络类型下的协议) 二、控制面板 - Windows防火墙 - 高级设置-入站规则 (1)开启防火墙后,能ping通设置。 &…

android 时间应用程序,Android在首次启动时需要更多时间启动应用程序

在我的项目中,我使用了需要multidex支持的库。 根据我的研究,我发现它会导致应用启动时出现延迟。我在gradle中启用了multidexfunction。 defaultConfig {multiDexEnabled true}我曾经为kitkat设备获得NoClassDefFound Exception,所以我添加了…

Mysql中用between...and...查询日期时注意事项

select count(1) from user where regist_date between 2017-07-25 00:00:00 and 2017-07-25 24:00:00;这条sql语句查询出结果为0。实际上数据库有一条符合该查询条件的数据。 错误原因:2017-07-25 24:00:00 晚上24点即为下一天00点 2017-07-26 00:00:00&#xff0…

android core log,Android 日志系统(Logcat)的实现分析

这篇说一下Android 日志系统的实现:1. Android中的打印分为4个缓冲区和6个打印等级,在frameworks\base\core\java\android\util\Log.java中有定义:四缓冲:public static final int LOG_ID_MAIN 0;public static final int LOG_ID…

Java接口的几种常见用法

接口(interface)对于面向对象编程来说是一个非常重要的概念。它是一系列方法的声明,却没有具体实现。有些编程语言,比如swift,把接口解释成“协议(protocol)”,我觉得也是非常的恰当…

android矢量图 内存大,Android内存控制小技巧-使用矢量图来节省你的内存并简化你的开发。...

先上一个 位图和矢量图的 说明。外链网址已屏蔽维基百科里面有更详细的说明 我就不贴地址了。简单来说就是位图 比 矢量图要大。但是位图可以适用于各种场景。但是矢量图就只能显示一些有规律的图形。复杂的做不了或者是很难做。对于android来说,我们一般app里面 会…

linux下利用nohup后台运行jar文件包程序

Linux 运行jar包命令如下: 方式一: java -jar XXX.jar 特点:当前ssh窗口被锁定,可按CTRL C打断程序运行,或直接关闭窗口,程序退出 那如何让窗口不锁定? 方式二 java -jar XXX.jar & &am…

idea 快捷键代码行标记并快捷跳到标记行

idea有一个组合快捷键 标记代码行(左边的行数会出现一个1,代表着已经标记了) ctrlshift1 迅速跳到标记行 ctrl1 这边给大家送上显示GIF

android十进制转十六进制算法,十进制转十六进制 代码

5621转换为16进制数的方法是“除16取余”方法,5621/16=商351余5,16进制最后一位为5351/16=商21余15,16进制右边第二位为F21/16=商1余5,16进制右边第三位为51/16=商0余1,1…

鸿蒙之火是什么意思,鸿蒙突然火了!鸿蒙是什么?

原标题:"鸿蒙"突然火了!"鸿蒙"是什么?什么是鸿蒙?鸿蒙是什么?很多人都在发问,仿佛一夜之间就火了的鸿蒙有何独特之处?鸿蒙是真的来了。鸿蒙是文化,鸿蒙也是科技…

String类的indexOf方法的用法和举例

String类的indexof方法的作用和返回值: 今天在这里重点回顾一下,希望对大家能有所帮助: indexOf(int,ch) 先看第一个indexOf它返回值是int,在看它的参数(int,ch&#x…

java中String对象作为参数传递问题

问题 java中将对象作为参数传递究竟是值传递还是引用传递? 1、基本类型作为参数传递时,是传递值的拷贝,无论你怎么改变这个拷贝,原值是不会改变的。 2、对象作为参数传递时,是把对象在内存中的地址拷贝了一份传给了参…

html语言怎么办到直接手写,4、手写HTML语言代码之《文字处理》

千里之堤始于足下!!学习网页制作的心得体会4.........手写HTML语言代码之《文字处理》一、和(居中对齐)下面网页我的第一个网页教师自制教学软件的背景随着教育体制的改革和信息时代的到来,可能越来越多的同学己经不再适应看着教师的板书、记着笔记的学习方式&#…

接口interface修饰符相关问题总结

1、抽象类中的抽象方法(其前有abstract修饰)不能用private、static、synchronized、native访问修饰符修饰。 原因如下: 抽象方法没有方法体,是用来被继承的,所以不能用private修饰;static修饰的方法可以通…