在浏览Apache ActiveMQ源代码时,我遇到了一个有趣的寻找循环..
for (;beforeEndIndex < size;) {
synchronizations.get(beforeEndIndex++).beforeEnd();
}
使用标准的while循环是否有利于此?
E.G。
while(beforeEndIndex < size){
beforeEndIndex++;
}
答案 0 :(得分:5)
两者完全相同。
for
循环与while
循环之间的主要区别在于for
循环将迭代计数器的范围限制在for
块内,其中while
循环要求您声明迭代计数器至少高一个块。在这种情况下,由于for
循环声明没有迭代计数器变量,因此没有区别。