Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/311.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 仅使用终止表达式的for循环vs while循环_Java_Loops_For Loop - Fatal编程技术网

Java 仅使用终止表达式的for循环vs while循环

Java 仅使用终止表达式的for循环vs while循环,java,loops,for-loop,Java,Loops,For Loop,在浏览Apache ActiveMQ源代码时,我遇到了一个有趣的查找循环 for (;beforeEndIndex < size;) { synchronizations.get(beforeEndIndex++).beforeEnd(); } (;beforeEndIndex

在浏览Apache ActiveMQ源代码时,我遇到了一个有趣的查找循环

 for (;beforeEndIndex < size;) {
     synchronizations.get(beforeEndIndex++).beforeEnd();
 }
(;beforeEndIndex{ synchronizations.get(beforeEndIndex++).beforeEnd(); } 使用标准while循环有什么好处

例如

while(beforeEndIndex
两者的作用完全相同


for
循环和
while
循环之间的主要区别在于
for
循环将迭代计数器的范围限制在
for
块内,而
while
循环要求您声明迭代计数器至少高出一个块。在本例中,由于
for
循环声明没有迭代计数器变量,因此没有区别。

两者的作用完全相同


for
循环和
while
循环之间的主要区别在于
for
循环将迭代计数器的范围限制在
for
块内,而
while
循环要求您声明迭代计数器至少高出一个块。在这种情况下,因为
for
循环声明没有迭代计数器变量,所以没有区别。

@ManosNikolaidis所以它只是一种编写相同逻辑的wierd方法?是的,它做同样的事情。如果
for
的三个部分中的任何一个缺失,我觉得这很奇怪。因此,限制变量的范围是很有用的。在这种情况下不行though@ManosNikolaidis所以,这只是一种编写相同逻辑的奇特方式?是的,它做同样的事情。如果
for
的三个部分中的任何一个缺失,我觉得这很奇怪。因此,限制变量的范围是很有用的。但在这种情况下不是这样
while(beforeEndIndex < size){
    beforeEndIndex++;
}