Welcome to the Treehouse Community

The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

Java Java Basics Perfecting the Prototype Looping until the value passes

Java Basics: console.printf doesn't seem to register

I'm trying to finish the last part of this task: using console.printf to print out "Because you said <response> you passed the test!" after terminating a do while loop. While the preview pane of the workspace doesn't show any errors, checking my work results in failure and "Did you use console.printf and to print out the formatted response?"

What (probably simple and obvious) command or syntax issue am I missing that will get this to work?

// I have initialized a java.io.Console for you. It is in a variable named console.
String response;
boolean invalidResponse;
  do {
    response = console.readLine("Do you understand do while loops?  ");
    invalidResponse = (response.equalsIgnoreCase("no"));
    if (invalidResponse) {
        console.printf("Keep studying and try again.");
  } while(invalidResponse);
console.printf("Because you said <response>, you passed the test!");

1 Answer

Seth Kroger
Seth Kroger
56,403 Points

Remember that printf uses %s to insert a string variable into the output.

console.printf("Because you said %s, you passed the test!", response);

That worked perfectly, thanks!