測量 Java 中經過的時間
要測量 Java 中經過的時間,有幾種方法可用。然而,最準確、最有效的方法是利用 System.nanoTime() 方法。
與普遍看法相反,System.currentTimeMillis() 不適合測量經過的時間,因為它依賴於掛鐘時間,容易出現漂移和手動校正。
System.nanoTime() 另一方面,是專門為測量經過的時間而設計的,不受掛鐘調整的影響。它以更精細的粒度運行,通常為微秒或奈秒。
為了說明其用法,讓我們考慮以下類別:
public class Stream { private long startTime; private long endTime; public void setStartTime() { startTime = System.nanoTime(); } public void setEndTime() { endTime = System.nanoTime(); } public long getDuration() { return endTime - startTime; } }
透過呼叫 setStartTime() 和 setEndTime() 方法在相關程式碼區塊中,您可以擷取時間戳記。隨後,呼叫 getDuration() 將準確計算從開始到結束所花費的時間(以奈秒為單位),可以輕鬆轉換為適當的單位(例如毫秒、秒或分鐘)。
記住,雖然System.nanoTime() 提供高精度計時,其結果也會受到作業系統、硬體和同時運行的其他進程等因素的影響。
以上是在 Java 中測量運行時間最準確的方法是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!