currentTimeMillis方法详解(3大用法与作用)

currentTimeMillis方法详解(3大用法与作用)-mikechen

currentTimeMillis简介

System.currentTimeMillis()用于获取当前系统时间,以毫秒为单位。

currentTimeMillis该值表示:当前计算机时间和GMT时间(格林威治时间)1970年1月1号0时0分0秒之间的时间差,以毫秒数为单位。

 

为什么使用currentTimeMillis

在开发过程中通常很多人都习惯使用new Date()来获取当前时间,new Date()所做的事情其实就是调用了System.currentTimeMillis()。

如果仅仅是需要或者毫秒数,那么完全可以使用System.currentTimeMillis()去代替new Date(),效率上会高一点。

如果需要在同一个方法里面多次使用new Date(),通常性能就是这样一点一点地消耗掉,这里其实可以声明一个引用。

 

currentTimeMillis语法

public static long currentTimeMillis()

获得的将是一个长整型的数字,该数字就是以差值表达的当前时间。

备注:注意currentTimeMillis返回值为Long型

 

currentTimeMillis用法

1. 计算某任务 耗费的毫秒

long start = System. currentTimeMillis();
for(int i = 0;i < 100000000;i++)
{ 
    int a = 0; 
} 
long end = System. currentTimeMillis(); 
long time = end – start; 
System.out.println("耗时" + (end - start) + "毫秒");

 

2.获得当前的系统时间

//可以直接把这个方法强制转换成date类型
Date nowTime = new Date(System.currentTimeMillis());

//设定显示格式
SimpleDateFormat sdFormatter = new SimpleDateFormat("yyyy-MM-dd");

//按指定格式转换
String now = sdFormatter.format(nowTime);
System.out.println(now);

 

3.用当前毫秒数给文件命名等

File f = new File("c:\\"+System.currentTimeMillis() + "");
f.createNewFile();

 

陈睿mikechen

10年+大厂架构经验,资深技术专家,就职于阿里巴巴、淘宝、百度等一线互联网大厂。

关注「mikechen」公众号,获取更多技术干货!

后台回复面试即可获取《史上最全阿里Java面试题总结》,后台回复架构,即可获取《阿里架构师进阶专题全部合集

评论交流
    说说你的看法