java - 以秒为单位计时某件事需要多长时间

标签 java

我正在尝试计算某件事需要多长时间,但我无法让它在不四舍五入的情况下吐出秒数。这是我尝试过的:

long beginTime = System.nanoTime();
//Do something
long endTime = System.nanoTime();
double time = (endTime-beginTime)/1000000000;

我还尝试使用函数TimeUnit.NANOSECONDS.toSeconds,它也对数字进行四舍五入。

它应该给我 1.45 秒,但它给我 1 ,它应该是 1445.7191 毫秒,但它给我 1446

最佳答案

除法的结果隐式转换为 int,将除数更改为 double 值(在末尾添加“d”):1000000000d

long beginTime = System.nanoTime();
// Do something
long endTime = System.nanoTime();
double time = (endTime - beginTime) / 1000000000d;
System.out.println(time);

关于java - 以秒为单位计时某件事需要多长时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38314940/

相关文章:

java - 如何从 ArrayList#toString() 中删除方括号 [ ]?

java - InMemoryDirectoryServer,处理请求(绑定(bind)、修改等)

java - 是否可以对 Jetty 的 servlet 映射使用正则表达式?

java - 如何使用 JPA/EclipseLink 与联结表建立多对多关系

Java ResultSet 除了 sql 之外什么也没有得到 mysql 中的结果

java - Android 应用内购买责任

java - 如果 csv 文件为空,如何停止数组越界错误?

java - 解析 HTML 网页

java - 服务器使用我在代码中甚至没有提到的表

java - 从jacoco和pit生成PDF文件