Displaying seconds in 3 decimal places. - java

12,017

Milliseconds are a long, and don't have decimal places. You will need to divide them by 1000.0f to get them into fractional seconds. Then you will need to use the format method to limit them to 3 decimal places.

Something like:

   final long ms;
   final float sec;

   ms = System.currentTimeMillis();
   sec = ms / 1000.0f;
   System.out.format("%.3f", sec);
Share:
12,017
WoLv3rine
Author by

WoLv3rine

Updated on June 14, 2022

Comments

  • WoLv3rine
    WoLv3rine almost 2 years

    I am using milliseconds in my java program and converting it to seconds. After my method does this, it returns seconds in a long format.

    System.out.println("[" + threadID + "]" + " " + "SeqSum res=" + grandTotal + " secs=" + stopTime);
    

    I have used the variable stopTime to display the seconds.

    My output is currently secs=0 It needs to be secs=0.000

    I need it to be displayed to 3 decimal places using system.out.println() or system.out.format()

    How can I reword my print statement so that I get the output secs=0.000?

    Please help