title: Java 8 Iterable.forEach() vs foreach loop
body: <p>Which of the following is better practice in Java 8?</p>
  
  <p>Java 8:</p>
  
  <pre><code>joins.forEach(join -&gt; mIrc.join(mSession, join));
  </code></pre>
  
  <p>Java 7:</p>
  
  <pre><code>for (String join : joins) {
      mIrc.join(mSession, join);
  }
  </code></pre>
  
  <p>I have lots of for loops that could be "simplified" with lambdas, but is there really any advantage of using them? Would it improve their performance and readability?</p>
  
  <p><strong>EDIT</strong></p>
  
  <p>I'll also extend this question to longer methods. I know that you can't return or break the parent function from a lambda and this should also be taken into consideration when comparing them, but is there anything else to be considered?</p>