Java でメソッドの実行にかかる時間を計算するにはどうすればよいですか?
ベストアンサー1
より正確に言うと、nanoTime()
ではなく methodを使用しますcurrentTimeMillis()
。
long startTime = System.nanoTime();
myCall();
long stopTime = System.nanoTime();
System.out.println(stopTime - startTime);
Java 8 の場合 (出力形式は ISO-8601):
Instant start = Instant.now();
Thread.sleep(63553);
Instant end = Instant.now();
System.out.println(Duration.between(start, end)); // prints PT1M3.553S
グアバストップウォッチ:
Stopwatch stopwatch = Stopwatch.createStarted();
myCall();
stopwatch.stop(); // optional
System.out.println("Time elapsed: "+ stopwatch.elapsed(TimeUnit.MILLISECONDS));