Concept

Why should you avoid a semicolon after a while-loop condition?

ComputerScienceOne / While Loops

"Consider the following:\n\n1 while(i <= 10);\n\n2 {\n\n3 //perform some action\n\n4 i++; //iteration\n\n5 }\n\nA similar problem occurs: the while keyword and continuation condition bind to the next executable statement or code block. As a consequence of the semicolon, the executable statement that gets bound to the while loop is empty. What happens is even worse: the program will enter an infinite loop. To see this, the code is essentially equivalent to the following:\n\n1 while(i <= 10) {\n\n2 }\n\n3 {\n\n4 //perform some action\n\n5 i++; //iteration\n\n6 }\n\nIn the while loop, we never increment the counter variable i, the loop does nothing, and so the computation will continue on forever! Some compilers will warn you about this, others will not. It is valid Java and it will compile and run, but obviously won’t work as intended. Avoid this problem by using proper syntax."

Related Ideas

Why should you avoid a semicolon after a while-loop condition? | ComputerScienceOne | Bifalgorithm | Bifalgorithm