当前位置:首页 > Java

java如何计时

2026-02-05 11:41:32Java

计时方法一:使用 System.currentTimeMillis()

通过获取当前系统时间的毫秒数差值实现计时。适合简单场景或粗略计时。

long startTime = System.currentTimeMillis();
// 执行待测代码
long endTime = System.currentTimeMillis();
System.out.println("耗时:" + (endTime - startTime) + "ms");

计时方法二:使用 System.nanoTime()

提供纳秒级精度(实际精度依赖硬件),适合需要高精度计时的场景。注意避免数值溢出问题。

long startTime = System.nanoTime();
// 执行待测代码
long endTime = System.nanoTime();
System.out.println("耗时:" + (endTime - startTime) / 1_000_000.0 + "ms");

计时方法三:使用 Instant 类(Java 8+)

结合Java 8的时间API实现更规范的计时,支持纳秒级精度。

Instant start = Instant.now();
// 执行待测代码
Instant end = Instant.now();
System.out.println("耗时:" + Duration.between(start, end).toMillis() + "ms");

计时方法四:使用 StopWatch(Spring框架)

Spring框架提供的工具类,支持多任务分段计时和格式化输出。

java如何计时

StopWatch stopWatch = new StopWatch();
stopWatch.start("任务1");
// 执行任务1
stopWatch.stop();
stopWatch.start("任务2");
// 执行任务2
stopWatch.stop();
System.out.println(stopWatch.prettyPrint());

注意事项

  • 避免在测量极短时间时忽略JVM预热影响,可通过预热循环消除
  • 多线程环境考虑使用线程安全的计时工具
  • 生产环境建议结合日志框架记录耗时

标签: java
分享给朋友:

相关文章

java如何创建对象

java如何创建对象

创建对象的基本方法 在Java中,创建对象主要通过new关键字调用构造函数完成。基本语法为: ClassName objectName = new ClassName(); 例如创建String对象…

如何阅读java源码

如何阅读java源码

阅读Java源码的方法 选择合适的源码项目 初学者建议从JDK核心类库(如java.lang、java.util)或知名开源项目(如Spring、Guava)入手。选择文档完善、社区活跃的项目能降低理…

java如何调用另一个类的方法

java如何调用另一个类的方法

调用另一个类的方法 在Java中调用另一个类的方法,通常需要创建该类的对象或直接通过类名调用(静态方法)。以下是几种常见的方式: 通过对象实例调用实例方法 创建一个目标类的对象,通过对象调用其方法。…

java如何取绝对值

java如何取绝对值

取绝对值的方法 在Java中,取绝对值可以通过以下几种方式实现: 使用Math.abs()方法 Math.abs()是Java中最常用的取绝对值方法,适用于多种数据类型: int absolute…

react如何与java配合

react如何与java配合

React 与 Java 配合的常见方式 React 作为前端框架,通常与 Java 后端通过 RESTful API 或 GraphQL 进行交互。以下是几种常见的配合方式: RESTful AP…

php 实现 java md5

php 实现 java md5

在 PHP 中实现与 Java 相同的 MD5 哈希算法,关键在于确保编码和输出格式的一致性。以下是具体实现方法和注意事项: 确保字符串编码一致 Java 的 String.getBytes() 默…