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面试题总结》,后台回复【架构】,即可获取《阿里架构师进阶专题全部合集》