0%

计时

前言:记录一下java计时,方便下次用

System.currentTimeMillis()

System.currentTimeMillis返回的是系统当前时间和1970-01-01之前间隔时间的毫秒数,精确度是毫秒级别的,可以转换为Date

1
2
3
4
5
6
7
8
// 获取当前系统时间
long startTime = System.currentTimeMillis();

// 程序运行

// 获取当前系统时间,与初始时间相减就是程序运行的毫秒数,除以1000就是秒数
long endTime = System.currentTimeMillis();
long usedTime = (endTime - startTime) / 1000;

System.nanoTime()

返回的时间是JVM运行的纳秒数,是没有任何意义的,基于的时间点是随机的,甚至可能是未来的时间也可能是过去,只能用来计算时间差,精确度为纳秒(如果单纯用于计时,nanoTime比currentTimeMillis更好)

1
2
3
4
5
6
7
long start = System.nanoTime();

// 程序运行


long end = System.nanoTime();
long cost = end - start;
-------------本文结束感谢您的阅读-------------