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 trial

Java Java Basics Perfecting the Prototype Looping until the value passes

Difficulty with second challenge task (looping)

I think I'm struggling to get the scope right with my code, as it doesn't work no matter how many times I've shifted variables around. I'm also unsure if I'm using the Boolean statement correctly. Any ideas?

Example.java
// I have initialized a java.io.Console for you. It is in a variable named console.
String response;
boolean no;
  do
  {response = console.readLine("Do you understand do while loops? ")}

  if
  {response = yes

2 Answers

Michael Hess
Michael Hess
24,512 Points

Hi mortvia,

It looks like you're really close! The do-while loop will keep asking "Do you understand do while loops?" until yes is typed then the do-while loop is exited. The following code will guide you through task 2 of this challenge:

//Declare a String variable named response
String response;


// The do while loop keeps asking the same question until "yes" is entered
//So we want to keep repeating when "no" is typed
// Exit the loop when "yes" is entered

do{
response = console.readLine("Do you understand do while loops?");  // "yes" or "no" is stored in the response variable 
// when someone types "no" the loop repeats
// when someone types "yes" the loop is exited
}while(response.equalsIgnoreCase("no"));

If you have any other questions feel free to shout them out on the forum! Hope this helps!

First - There is no need for a boolean here. A do-while loop should do just fine. Assing "response" with a value from the user at first, then in the do-while loop keep repeating that process while the user answer is "No" (capitalization does matter).

Also, there is no need for and if block.

Try coming up with the code alone, if you still have troubles, make sure to ask again - there's nothing wrong with it :)

Thanks for all the responses. I got it now! :D