java - 用更少的时间进行更多的迭代?
问题描述
我只是无事可做,开始for
在 Java 中搞乱循环,所以我编写了以下函数
static int getCurrentTime() {
return (int)System.currentTimeMillis();
}
这只是让我有时间。
现在我有我的主要功能:
public static void main(String[] args) {
int s = 0;
int beginTime = getCurrentTime();
for (int j = 0; j < 2000000000; ++j)
for (int i = 0; i < ####; ++i)
s++;
System.out.println("done in " + (getCurrentTime() - beginTime)+
" milliseconds!");
}
现在,当我将 1 放在 #### 的位置时,我得到以下输出
done in 4118 milliseconds!
但是当我将 3 放在 #### 的位置时,我得到以下输出
done in 11 milliseconds!
这怎么可能?更多的迭代如何花费更少的时间?我真的对这里发生的事情感到困惑。
解决方案
推荐阅读
- metal - Metal中的混合操作
- python - python从字符串中获取键值
- typescript - Unknown not assignable to type:Redux Observable 中的 Typescript 错误
- android - 使用 Exoplayer 进行 Udp 流式传输
- javascript - 当用户单击屏幕中的其他位置时如何隐藏消息
- python - Python multiprocessing Manager dict,从进程和主访问
- asp.net - ASP.NET Razor Pages 加载大量数据,性能更好?
- c# - 实体框架核心 - 带有 ValueComparer 的 ValueConverter 将 Enum 转换为 Class 不起作用
- java - jsp 操作标签与 RequestDispatcher 方法
- css - 有没有办法将页面上的 3d 图片转换为具有放大效果的背景的视觉效果