Java程序运行纳秒级差值计算
纳秒
ns(nanosecond):纳秒, 时间单位。一秒的10亿分之一,即等于10的负9次方秒。常用作 内存读写速度的单位。 1纳秒=1000 皮秒 1纳秒 =0.001 微秒 1纳秒=0.000001 毫秒 1纳秒=0.00000 0001秒 其实翻过来看更清晰,咱们看毫秒啊 100000纳秒=1毫秒
java的System.currentTimeMillis()和System.nanoTime()区别:
java中System.nanoTime()返回的是纳秒, nanoTime而返回的可能是任意时间,甚至可能是负数…… java中System.currentTimeMillis()返回的毫秒,这个毫秒其实就是自1970年1月1日0时起的毫秒数. 两个方法都不能保证完全精确,精确程度依赖具体的环境.
更细致的差别
package Action;
public class demo {
public static void main(String[] args) {
//1纳秒=0.000001 毫秒
//100000纳秒=1毫秒
int count=100000;
long start = System.nanoTime();
long sum=0;
for (int i = 1; i <= count; i++) {
sum+=i;
System.out.println(sum);
long end = System.nanoTime();
System.out.println("累计"+count+"的值用时:"+(end-start)+"纳秒");
System.gc();//清理一下
long start1 = System.currentTimeMillis();
long sum1=0;
for (int i = 1; i <= count; i++) {
sum1+=i;