Java Programming - Flow Control - Discussion

Discussion Forum : Flow Control - General Questions (Q.No. 4)
4.
public class While 
{
    public void loop() 
    {
        int x= 0;
        while ( 1 ) /* Line 6 */
        {
            System.out.print("x plus one is " + (x + 1)); /* Line 8 */
        }
    }
}
Which statement is true?
There is a syntax error on line 1.
There are syntax errors on lines 1 and 6.
There are syntax errors on lines 1, 6, and 8.
There is a syntax error on line 6.
Answer: Option
Explanation:

Using the integer 1 in the while statement, or any other looping or conditional construct for that matter, will result in a compiler error. This is old C Program syntax, not valid Java.

A, B and C are incorrect because line 1 is valid (Java is case sensitive so While is a valid class name). Line 8 is also valid because an equation may be placed in a String operation as shown.

Discussion:
14 comments Page 1 of 2.

Chandan kumar barnwal said:   8 years ago
Simple, while loop can have the only condition that will be true or false,
1 means true
0 means false, it accepts in C /C++, not in java
Java accept only true/false values as a condition.
(2)

Sundar said:   1 decade ago
I got the following error while compiling the above code.

--------------------------------------------------------------
While.java:6: incompatible types
found : int
required: boolean
while ( 1 ) /* Line 6 */
^
1 error.
--------------------------------------------------------------

Therefore, the given answer is correct.

M.SIDDHARTHA said:   1 decade ago
while is a keyword in JAVA and we can't assign a keyword to a class and give a satisfactory explanation for it.

Arjun said:   1 decade ago
While will take boolean value like if?

Sanket said:   1 decade ago
no, 'while' will take boolean values!

Syntax:
while(condition)
{
//block of statements
}

Arun said:   1 decade ago
Answer is D.

Because while loop accepts boolean but not Integer as an expression. So the error will be in line no.6 only. Remaining code is perfect.

Anjaneyulu said:   1 decade ago
According to java naming rules keywords are not used for class name but in this Example your used while, in java while is a key word, but your not given the that error by.

Kalyan said:   1 decade ago
Here class name is 'While' and starts with caps 'W' not with 'w'. So we can use While as class name. We should not use while keyword as class name.

Because keywords start with small letters and they are reserved in java. We have used caps 'W' in the given program so it is not matched with java keyword i.e. while.

Dnyaneshwar Shivbhakta said:   1 decade ago
While is keyword in java and keywords are not allowed for User Defined Class.

Vinod wakdde said:   1 decade ago
Explain correct syntax of "while"?


Post your comments here:

Your comments will be displayed after verification.