可能的重复:
使用 for 循环还是 while 循环进行迭代? https://stackoverflow.com/questions/99164/iterate-with-for-loop-or-while-loop
C 中的循环 - for() 或 while() - 哪个最好? https://stackoverflow.com/questions/2242646/loops-in-c-for-or-while-which-is-best
什么时候应该使用for
循环而不是while
loop?
我认为以下循环是相同的,除了语法之外。如果是这样,那么为什么选择其中一个而不是另一个呢?
int i;
for (i = 0; i < arr.length; i++) {
// do work
}
int i = 0;
while (i < arr.length) {
// do work
i++;
}
就您而言,除了少一行代码之外,您不会获得太多收益for
loop.
但是,如果您像这样声明循环:
for(int i = 0; i < x; i++)
你设法保持i
在循环的范围内,而不是让它逃到代码的其余部分。
此外,在 while 循环中,变量声明、条件和增量位于 3 个不同的位置。通过 for 循环,一切都集中在一个方便、易于阅读的地方。
最后的想法:
还有一个重要的注意事项。两者之间存在语义差异。一般来说,While 循环意味着具有无限数量的迭代。 (即,直到文件被读取......无论其中有多少行),并且 for 循环应该具有更明确的迭代次数。 (循环遍历集合中的所有元素,我们可以根据集合的大小来计数。)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)