title: forEach not modify java(8) collection
body: <p>Say I have an Integer list and I'm using Java 8 forEach method on the list to double its values.
  Say I have the following code:</p>
  
  <pre><code>List&lt;Integer&gt; l = Arrays.asList(2,3,6,1,9);
  l.forEach(p-&gt;p*=2);
  </code></pre>
  
  <p>As forEach method take Consumer and calls it accept methos. 
  I print the list after runnig the above code and the original list doesn't change.</p>
  
  <p>As far as I understand Stream doesn't alter the source but here I just call accept method on each element...</p>
  
  <p>Thank u in advace</p>