Just wondering if there is any computational difference between:
for(;condition;) {
//task
}
and
while(condition) {
//task
}
There is no difference as in both the cases Java compiler generates the same byte code . If you look on the byte code when I used for loop:
0: bipush 11
2: istore_1
3: goto 9
6: iinc 1, -1
9: iload_1
10: bipush 10
12: if_icmpgt 6
15: return
The above byte code genearated for the code below :
int a = 11;
for (; a > 10;) {
a--;
}
And same byte code:
Code:
0: bipush 11
2: istore_1
3: goto 9
6: iinc 1, -1
9: iload_1
10: bipush 10
12: if_icmpgt 6
15: return
Has generated by the compiler when I used while loop
int a = 11;
while (a > 10) {
a--;
}
The only difference between for and while is the syntax. Java will compile them to the exactly same code so there's no computational difference. Here is an article in the matter.
continue.