The problem is that when we call the debug() method, we pass a method into it that builds a string by iterating through a list of metacards. Java will evaluate the method argument every time debug() is called, regardless of whether or not debug is enabled.