Java程序运行纳秒级差值计算
生活随笔
收集整理的這篇文章主要介紹了
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;}System.out.println(sum1);long end1 = System.currentTimeMillis();System.out.println("累計"+count+"的值用時:"+(end1-start1)+"毫秒");} }可以看到納秒更加細致的反應除了程序的運行之間,基本上定義一個變量用時100納秒,咱們可以根據具體的情況進行更為細致的優化,讓程序更加的快捷。
總結
以上是生活随笔為你收集整理的Java程序运行纳秒级差值计算的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java递归基础案例-汉诺塔
- 下一篇: 【蓝桥杯Java_C组·从零开始卷】第八