title: Appending words to sentence
body: <p>What is the difference in the run-time of the following approaches?</p>
  
  <pre><code>public String merge(String[] words, String[] more) {   
    ArrayList&lt;String&gt; sentence = new ArrayList&lt;String&gt;();   
    for (String w : words) sentence.add(w);   
    return Arrays.toString(sentence.toArray());    
  } 
  </code></pre>
  
  <p>Assuming there is no re-sizing of the list above - how does the time complexity compare to the approach below?</p>
  
  <pre><code>public String makeSentence(String[] words) {   
  StringBuffer sentence = new StringBuffer();   
  for (String w : words) sentence.append(w);   
  return sentence.toString();   
  }  
  </code></pre>
  
  <p>Is there any approach that is even better?</p>