我正在无限奔跑for
环形。为什么是这样for
一段时间后循环终止?
for(int i = 10; i > 0; i++) { }
但如果我在这里打印一些东西for
循环然后它不会终止。为什么这样?
The int
环绕当达到 2,147,483,647 时,变为 -2,147,483,648。
这会导致条件i > 0
评估为false
.
这是 Java 中完美定义的行为:但在 C 或 C++ 中却不能这样做。
如果您尝试在循环中打印某些内容,则循环速度会大大降低,并且您可能会失去耐心。合并当前值i
在你的输出中,亲自看看:即使每秒输出 1,000 次迭代也需要近一个月的时间才能达到环绕点!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)