title: When should you explicitly use a StringBuilder?
body: <p>As I understand it, when I do <code>String baz = "foo" + "bar" + "123"</code> the Java compiler internally replaces the expression with a <code>StringBuilder</code>. However our Java teacher told us that it is good practice to always use a <code>StringBuilder</code> explicitly...</p>
  
  <p>Am I correct in assuming I will <strong>only</strong> need to explicitly use StringBuilder when concatenating inside loops as indicated in <a href="https://stackoverflow.com/a/18453485">an answer to Stack Overflow question <em>String builder vs string concatenation</em></a>? Are there other cases where you should explicitly use a <code>StringBuilder</code> instead of <code>+</code> or <code>+=</code>?</p>