Welcome to the Treehouse Community
Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.
Start your free trialAdam Tyler
14,865 Points"Do you understand while loops?" Loop while answer is No.
I don't understand where i have gone wrong.
// I have initialized a java.io.Console for you. It is in a variable named console.
String response;
do {
response = console.readLine("Do you understand do while loops?");
boolean isNo = response.equals("No");
}while(isNo);
1 Answer
Steven Parker
231,275 PointsJust like "response", the variable "isNo" should be declared before the loop. When you declare it inside the loop, it goes out of scope before it can be tested in the "while" expression.
Alternatively, you could eliminate the variable entirely and just put the expression you are setting it with into the "while" condition.
Adam Tyler
14,865 PointsAdam Tyler
14,865 PointsThank you, by declaring it outside I passed the challenge. But my I did, before, try to put the expression in the wile condition but it threw an error. I did it like this:
String response; do { response = console.readLine("Do you understand do while loops?"); }while(response.equals("No");
Is this wrong?
Steven Parker
231,275 PointsSteven Parker
231,275 PointsThe problem there is that the parentheses are unbalanced. It needs a final closing parenthesis to complete the conditional clause of the "where".