title: Java: Best practices on string concatenation and variable substituittion in strings
body: <p>There are way too many ways to concatenate strings and add variable values in Java. How should I select one (pros, cons, best use cases, etc).</p>
  
  <ul>
  <li>MessageFormat.format</li>
  <li>String.format</li>
  <li>"string a" + "string b"</li>
  <li>StringBuilder</li>
  <li>StringBuffer</li>
  <li>String.concat</li>
  <li>Streams</li>
  <li>String.join()</li>
  <li>Apache Commons’ StringUtils</li>
  <li>Google Guava’s Joiner</li>
  <li>...</li>
  </ul>