Java for循环与while循环。性能差异? [英] Java for loop vs. while loop. Performance difference?
问题描述
int length = 200;
int test = 0;
int [] input = new int [10]; (int i = 1; i <= length; i ++){
for(int j = 0; j <= length-i; j ++){
for(int k = 0; k test = test + input [j + k];
$ div class =h2_lin>解决方案
不,改变循环的类型并不重要。
唯一能让速度更快的方法是减少循环嵌套,循环
循环与
循环之间的唯一区别是 code> loop是定义它们的语法。没有任何性能差异。
int i = 0;
while(i <20){
// do stuff
i ++;
$ / code $ / $ p
$ b 相同:
for(int i = 0; i <20; i ++){
// do Stuff
}
(实际上,for循环更好一些,因为 i
将不在循环之后, i
将继续在而
循环的情况下)。
循环仅仅是一个语法上更漂亮的循环方式。
Assume i have the following code, there are three for loop to do something. Would it run fast if i change the most outer for loop to while loop? thanks~~
int length = 200;
int test = 0;
int[] input = new int[10];
for(int i = 1; i <= length; i++) {
for (int j = 0; j <=length - i; j++) {
for (int k = 0; k < length - 1; k++) {
test = test + input[j + k];
}
}
}
解决方案 No, changing the type of loop wouldn't matter.
The only thing that can make it faster would be to have less nesting of loops, and looping over less values.
The only difference between a for
loop and a while
loop is the syntax for defining them. There is no performance difference at all.
int i = 0;
while (i < 20){
// do stuff
i++;
}
Is the same as:
for (int i = 0; i < 20; i++){
// do Stuff
}
(Actually the for-loop is a little better because the i
will be out of scope after the loop while the i
will stick around in the while
loop case.)
A for loop is just a syntactically prettier way of looping.
这篇关于Java for循环与while循环。性能差异?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!