我有一个for循环,它通过大小为512(索引范围0-511)的数组运行。但是,当i == 512时,它将继续进入循环,并抛出ArrayIndexOutOfBounds异常。下面的屏幕快照显示了我在调试模式下将其停止条件设置为i == 512时运行的代码。

java - Java for循环超越退出条件-LMLPHP

任何人都知道为什么即使满足退出条件后,此循环仍继续循环吗?

最佳答案

您的循环条件是:

i < frameSet * associativity + associativity


根据调试器,当前值为512 < 64 * 8 + 8512 < 520,其值为true。这就是循环仍在运行的原因。

关于java - Java for循环超越退出条件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46498813/

10-12 04:03
查看更多