java - 不同的for循环增量值

标签 java iteration increment

我最近摆弄了一些 for 循环,并试图了解其中的一些逻辑部分。虽然此时我远远超出了循环的层次,但有时在涉及逻辑时我仍然会变得有点奇怪。

但是,我发现一个for循环的增量值是不同的,这取决于你是在循环内还是在循环外:

int i;
for(i = 0; i < 10; i++) {
   System.out.println(i); // 0 ... 9
}

System.out.println(i); // 10

现在,恐怕有一天我会不得不使用计数器做一些事情,而不仅仅是将它与条件相匹配...

现在我想我明白为什么会这样了;在条件失败且循环终止后,我会递增,但这真的应该发生吗?

是否有任何数学/逻辑(或优雅的)方法可以在循环终止后不让它进入 N+1,我在这里错过了?

最佳答案

这就是 for 循环的工作原理:

  1. 检查条件,如果成立则转到2,否则终止;
  2. 跑体;
  3. 执行修改,转到1。

总之,你不能。

此外,如果变量没有达到 N + 1,循环如何终止?在这种情况下,循环条件始终成立,因此它将永远运行。

关于java - 不同的for循环增量值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16625855/

相关文章:

c++ - 在 sizeof(++n) 表达式中不调用增量运算符

java - 如何在使用递归时增加 3 个不同路径的数字?

Java AddObserver(this) 在静态 main 中

java - 将php中的照片作为字节回显到java应用程序

java - 让 clojure 生成一个像构建器模式一样使用的 java 类

C 程序使用 for 循环递增变量

java - RestTemplate 访问 Response 中的元素

javascript - Jade 表迭代,其中包含不同的内容

javascript - 迭代嵌套的 JavaScript 对象

powershell - 如何在powershell中解析json响应