我最近讨论了Java中for循环中使用非计数器相关条件的问题:
for(int i = 0; o.getC() < 10; i++)
o.addC(i);
请问是否有任何“官方”的约定规范适用于此类 for 循环条件?我认为这种方式比等价的 while 循环更容易阅读,因为所有循环参数都在第一行放在一起:
int i = 0;
while(o.getC() < 10) {
i++;
o.addC(i);
}
甚至更糟糕的是:
int i = 0;
while(o.getC() < 10)
o.addC(++i);
i
的作用域限定在循环内;2)你被迫记住在每次迭代中递增(或明确不递增)i
。这里的第二个和第三个选项没有特别的优势,并且可读性较差(尤其是o.addC(++i);
)。 - Andy Turneri < 10
。 - Genesis Rockfor (;;)
相当于while (true)
。所以,唯一的“惯例”就是它需要有一个条件,但如果被省略,它会被评估为 true。 - OneCricketeer