どのようにするTimeUnitの列挙型を使用して秒にナノ秒に変換するには?

StackOverflow https://stackoverflow.com/questions/924208

  •  06-09-2019
  •  | 
  •  

質問

秒にナノ秒から値を変換するには?

ここでのコードセグメントです。

import java.io.*;
import java.util.concurrent.*; 
..

class Stamper { 

public static void main (String[] args) { 
long start = System.nanoTime(); 
//some try with nested loops 
long end = System.nanoTime(); 
long elapsedTime = end - start;

System.out.println("elapsed: " + elapsedTime + "nano seconds\n");

//convert to seconds 
TimeUnit seconds = new TimeUnit(); 
System.out.println("which is " + seconds.toSeconds(elapsedTime) + " seconds"); 
}}

エラーがある

Stamper.java:16:  enum types may not be instantiated.

これは何を意味するのでしょうか?

役に立ちましたか?

解決

さて、あなただけの10億で割ることができます:

long elapsedTime = end - start;
double seconds = (double)elapsedTime / 1_000_000_000.0;
あなたが変換することTimeUnitを使用する場合は、小数点以下の精度を失うが、全体数の精度を維持しますので、

、あなたは、限り、あなたの結果を得るでしょう。

scroll top