用java 写stopwatch
时间: 2024-03-09 16:24:28 浏览: 192
好的,请看以下代码:
public class Stopwatch {
private final long start;
public Stopwatch() {
start = System.currentTimeMillis();
}
public double elapsedTime() {
long now = System.currentTimeMillis();
return (now - start) / 1000.0;
}
public static void main(String[] args) {
Stopwatch timer = new Stopwatch();
for (int i = 0; i < 1000000000; i++) {
// Do something here
}
double time = timer.elapsedTime();
System.out.println("Elapsed time: " + time + " seconds");
}
}
这是一个简单的秒表类,包含一个构造函数和一个计算经过时间的方法。在主函数里可以看到如何使用它来计算某个代码块的执行时间。注意,由于计时器的精度可能有限,所以这里将毫秒转换成了秒来表示经过的时间。
相关问题
用java设计stopwatch秒表类
下面是一个简单的Java代码示例,用于实现一个秒表类:
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;
}
public long getElapsedTime() {
long elapsed;
if (running) {
elapsed = (System.currentTimeMillis() - startTime);
} else {
elapsed = (stopTime - startTime);
}
return elapsed;
}
public void reset() {
this.startTime = 0;
this.stopTime = 0;
this.running = false;
}
public static void main(String[] args) {
Stopwatch stopwatch = new Stopwatch();
stopwatch.start();
// Do some work here
stopwatch.stop();
System.out.println("Elapsed time in milliseconds: " + stopwatch.getElapsedTime());
stopwatch.reset();
}
}
在这个示例中,我们定义了一个名为Stopwatch
的类,该类包含四个主要方法:start
,stop
,getElapsedTime
和reset
。start
方法记录启动时间,并将running
标志设置为true
。stop
方法记录停止时间,并将running
标志设置为false
。getElapsedTime
方法返回经过的时间(以毫秒为单位),如果秒表正在运行,则返回当前时间与启动时间之间的差值,否则返回停止时间与启动时间之间的差值。reset
方法将所有变量重置为默认值。
在main
方法中,我们创建一个新的Stopwatch
实例,并使用start
方法启动秒表。我们可以在这里执行一些工作,然后使用stop
方法停止秒表,并使用getElapsedTime
方法获取经过的时间。最后,我们使用reset
方法将秒表重置为默认值。
java stopwatch
以下是一个简单的 Java Stopwatch 类的示例代码:
public class Stopwatch {
private long startTime;
private long stopTime;
private boolean isRunning;
public void start() {
this.startTime = System.currentTimeMillis();
this.isRunning = true;
}
public void stop() {
this.stopTime = System.currentTimeMillis();
this.isRunning = false;
}
public long getElapsedTime() {
long elapsed;
if (isRunning) {
elapsed = (System.currentTimeMillis() - startTime);
} else {
elapsed = (stopTime - startTime);
}
return elapsed;
}
public void reset() {
this.startTime = 0;
this.stopTime = 0;
this.isRunning = false;
}
}
使用示例:
Stopwatch stopwatch = new Stopwatch();
stopwatch.start();
// some code to be timed...
stopwatch.stop();
long elapsedTime = stopwatch.getElapsedTime();
System.out.println("Elapsed time in milliseconds: " + elapsedTime);
该类具有以下方法:
start()
:启动计时器。stop()
:停止计时器。getElapsedTime()
:获取经过的时间(以毫秒为单位)。reset()
:重置计时器。
你可以根据需要对该类进行修改和扩展,例如添加格式化输出等功能。
阅读全文
相关推荐













