क्या जावा में एक स्टॉपवॉच है? Google पर मुझे केवल स्टॉपवॉच का कोड मिला है जो काम नहीं करता है - वे हमेशा 0 मिलीसेकंड वापस करते हैं।
यह कोड जो मुझे मिला वह काम नहीं करता है, लेकिन मैं यह नहीं देखता कि क्यों।
public class StopWatch {
private long startTime = 0;
private long stopTime = 0;
private boolean running = false;
public void start() {
this.startTime = System.currentTimeMillis();
this.running = true;
}
public void stop() {
this.stopTime = System.currentTimeMillis();
this.running = false;
}
//elaspsed time in milliseconds
public long getElapsedTime() {
long elapsed;
if (running) {
elapsed = (System.currentTimeMillis() - startTime);
} else {
elapsed = (stopTime - startTime);
}
return elapsed;
}
//elaspsed time in seconds
public long getElapsedTimeSecs() {
long elapsed;
if (running) {
elapsed = ((System.currentTimeMillis() - startTime) / 1000);
} else {
elapsed = ((stopTime - startTime) / 1000);
}
return elapsed;
}
}
currentTimeMillis()
उत्पादन के लिए उपयोग न करें , क्योंकि यह सिस्टम दिनांक / समय से बंधा है और नीरस होने की गारंटी नहीं है (जैसे कि आप नकारात्मक बीता हुआ समय प्राप्त कर सकते हैं)। समय के उपयोग को मापने के लिए nanoTime()
- यह नीरस होने की गारंटी है और वास्तव में उद्देश्य को मापने के लिए है। Docs.oracle.com/javase/8/docs/api/java/lang/…