如何在Java中测量方法的执行时间?
大家好!我是一名初学Java的开发者,遇到了一个问题。我正在编写一个用于数据处理的小应用程序,有些方法运行得异常缓慢。我需要了解特定方法的执行时间,以便找到瓶颈并优化代码。
目前,我使用 `System.currentTimeMillis()` 在方法调用前后记录时间。
以下是我的代码示例:
```java
public class DataProcessor {
public void processData() {
long startTime = System.currentTimeMillis();
// 这里是一些繁重的代码
for (int i = 0; i < 1000000; i++) {
doSomething();
}
long endTime = System.currentTimeMillis();
long duration = endTime - startTime;
System.out.println("方法执行时间:" + duration + " 毫秒");
}
private void doSomething() {
// 一些逻辑
try {
Thread.sleep(1);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
```