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

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?

Example.java
// 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,413 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!