title: Is there a general string substitution function similar to sl4fj?
body: <p>With sl4fj if I want to construct a string message there is a nice approach which makes use of substitutions.  For instance, it might be something like:</p>
  
  <pre><code>logger.info("Action {} occured on object {}.", objectA.getAction(), objectB);
  </code></pre>
  
  <p>If there are more than a few substitutions required then it is something like:</p>
  
  <pre><code>logger.info("Action {} occured on object {} with outcome {}.", 
      new Object[]{objectA.getAction(), objectB, outcome});
  </code></pre>
  
  <p>My question is: Is there a generic way for me to create a string (and not just a slf4j log message)? Something like:</p>
  
  <pre><code>String str = someMethod("Action {} occured on object {}.", objectA.getAction(), objectB);
  </code></pre>
  
  <p>or</p>
  
  <pre><code>String str = someMethod("Action {} occured on object {} with outcome {}.", 
      new Object[]{objectA.getAction(), objectB, outcome});
  </code></pre>
  
  <p>If it is in the standard Java library, what would that "someMethod" be?</p>