Java Laufzeitmessung mit float

04/24/2015 15:05 Gauß#1
Hallo, ich versuche grade die Laufzeit eines Programmes in Sekunden mit einer Nachkommastelle zu messen. Das sieht dann ungefähr so aus:
long anfang = System.currentTimeMillis();
//Das was gemessen werden soll
long ende = System.currentTimeMillis();
long zeit = tEnd - tStart;

Das Problem ist, wenn ich jetzt zum Beispiel:
float zeitf = msecs/1000;
schreibe, gibt er mir eigentlich nur das Ergebnis mit einer .0 drangehängt an. Ich will aber zum Beispiel, wenn ich für die Laufzeit 5555 bekomme, dass er das dann in 5.5 umrechnet. Kann mir da vielleicht jemand helfen?
04/24/2015 16:30 Zunft#2
Alle Variablen, die du hier angibst:

Code:
float zeitf = msecs/1000;
müssen ebenfalls Gleitkommazahlen sein.

Hier mal ein Beispiel:

Code:
long anfang = System.currentTimeMillis();
        
System.out.println(anfang);

//Dein Code, von dem du die Laufzeit messen willst.
        
long ende = System.currentTimeMillis();
        
double zeit = anfang - ende;
        
double zeitf = zeit / 1000;
        
System.out.println(zeitf);
04/24/2015 18:57 xinternet#3
Quote:
Originally Posted by Gauß View Post
Hallo, ich versuche grade die Laufzeit eines Programmes in Sekunden mit einer Nachkommastelle zu messen. Das sieht dann ungefähr so aus:
long anfang = System.currentTimeMillis();
//Das was gemessen werden soll
long ende = System.currentTimeMillis();
long zeit = tEnd - tStart;

Das Problem ist, wenn ich jetzt zum Beispiel:
float zeitf = msecs/1000;
schreibe, gibt er mir eigentlich nur das Ergebnis mit einer .0 drangehängt an. Ich will aber zum Beispiel, wenn ich für die Laufzeit 5555 bekomme, dass er das dann in 5.5 umrechnet. Kann mir da vielleicht jemand helfen?
float zeitf = msecs/1000f;

müsste das nicht reichen?