Hallo miteinander,
ich habe mal eine Frage zu diesem Codeschnippsel:
Wie kann ich dafür sorgen, dass die mögliche Restzeit korrekt berechnet wird.
Gibt es eine Formel um diese zu Berechnen?
Im Code funktioniert es zum Ende hin. Allerdings hätte ich erwartet das er mir solche Ausgabe produziert:
Test.main() 0
Test.main() 9
Test.main() 8
Test.main() 7
Test.main() 6
Test.main() 4
Test.main() 3
Test.main() 2
Test.main() 1
aber diese Ausgabe kommt
Test.main() 0
Test.main() 4
Test.main() 4
Test.main() 4
Test.main() 4
Test.main() 3
Test.main() 2
Test.main() 1
Test.main() 0
ich habe mal eine Frage zu diesem Codeschnippsel:
Java:
public class Test {
public static void main(String[] args) throws InterruptedException {
long currentTimeMillis = System.currentTimeMillis();
for (int i = 100; i < 1000; i += 100) {
System.out
.println("Test.main() "
+ getCalculateRemainingTimeInSec(currentTimeMillis,
1000, i));
Thread.sleep(1000);
}
}
private static long getCalculateRemainingTimeInSec(long startTime,
long sourceLenght, long destLenght) {
long elapsedTime = System.currentTimeMillis() - startTime;
float sum = (float) ((((destLenght * 100) / sourceLenght)) / 100.0);
long totalMillis = (long) (elapsedTime / sum);
long remainingMillis = totalMillis - elapsedTime;
int remainingSeconds = (int) remainingMillis / 1000;
return remainingSeconds;
}
}
Wie kann ich dafür sorgen, dass die mögliche Restzeit korrekt berechnet wird.
Gibt es eine Formel um diese zu Berechnen?
Im Code funktioniert es zum Ende hin. Allerdings hätte ich erwartet das er mir solche Ausgabe produziert:
Test.main() 0
Test.main() 9
Test.main() 8
Test.main() 7
Test.main() 6
Test.main() 4
Test.main() 3
Test.main() 2
Test.main() 1
aber diese Ausgabe kommt
Test.main() 0
Test.main() 4
Test.main() 4
Test.main() 4
Test.main() 4
Test.main() 3
Test.main() 2
Test.main() 1
Test.main() 0