【Java】nanoTime/currentTimeMillisを使って時間をナノ秒単位とミリ秒単位で計測する!

処理時間をナノ秒、ミリ秒で計測するにはSystem.nanoTimeメソッドSystem.currentTimeMillisメソッドを使用します。

System.nanoTimeメソッドはナノ秒単位で処理時間を計測することができ、System.currentTimeMillisメソッドはミリ秒単位で処理時間を計測することができます。

今回はnanoTimeとcurrentTimeMillisメソッドを使って、
ナノ秒の場合
ミリ秒の場合
で時間を計測します。

nanoTimeメソッドとは

System.nanoTimeメソッドはナノ秒単位で処理時間を計測することができます。
nanoTimeメソッドの戻り値はlong型でプログラムを実行しているシステムの時間返すようになります。

nanoTimeメソッドの書き方

nanoTimeメソッドの構文は下記となります。

currentTimeMillis()メソッドとは

System.currentTimeMillisメソッドはミリ秒単位で処理時間を計測することができます。
currentTimeMillisメソッドの戻り値はlong型でエポック秒から経過した時間を返すようになります。

currentTimeMillisメソッドの書き方

currentTimeMillisメソッドの構文は下記となります。

時間を計測するサンプルコード

時間をで計測するサンプルコードを紹介します。
時間を計測するには、処理を開始した時刻と終了した時刻を記録し、その差を求めることで計測することができます。

ナノ秒で計測する場合

nanoTimeメソッドを使用して時間をナノ秒で計測します。

出力結果

1847283ナノ秒

ナノ秒単位で時間を計測することができました。

ミリ秒で計測する場合

currentTimeMillisメソッドを使用して時間をミリ秒で計測します。

出力結果

2ミリ秒

ミリ秒単位で時間を計測することができました。

今回のポイント

nanoTimeでナノ秒単位で計測

ナノ秒単位で時間を計測するにはSystem.nanoTimeメソッドを使用する。

• ナノ秒単位で時間を計測するにはSystem.nanoTimeメソッドを使用する

• nanoTimeメソッドを2回呼び出し、2回目から1回目の差分を取ることで、経過時間をナノ秒単位で取得することができる

• nanoTimeメソッドの戻り値は、経過時間の差分を取るためだけに使用される

currentTimeMillisでミリ秒単位で計測

ミリ秒単位で時間を計測するにはSystem.currentTimeMillisメソッドを使用する

• ミリ秒単位で時間を計測するにはSystem.currentTimeMillisメソッドを使用する

• currentTimeMillisメソッドは1970年1月1日午前0時ちょうどからメソッドを呼び出した時間までの経過時間をミリ秒で表した値を戻す

• currentTimeMillisメソッドを2回呼び出し、2回目から1回目の差分を取ることで、経過時間をミリ秒単位で取得することができる

Writer
壷井

壷井

株式会社flyhawkの壷井です。フライテックメディア事業部でのメディア運営・ライター業務なども担当。愛機はMac Book AirとThinkPad。好きな言語:swift、JS系(Node.js等)。好きなサーバー:AWS。受託開発やプログラミングスクールの運営をしております。ご気軽にお問い合わせください。

最新の案件情報

フリーランスエンジニアの案件探し