title: Why use lambda over normal methods?
body: <p>So suppose my application does lots of repetitive work, for example let's say my application checks lots of various Lists if they're empty or not. There are two methods by which I can accomplish this functionality - (there maybe other methods but since my goal is to understand the difference of the two methods and not the functionality itself here we go)</p>
  <p><strong>Method 1 - Tradition Method</strong></p>
  <pre><code>public boolean isEmptyOrNull(List list)
  {
  return list != null &amp;&amp; !list.isEmpty();
  }
  </code></pre>
  <p><strong>Method 2 - Lambda Way</strong></p>
  <p>Assuming we have created a functional interface with class name <em><strong>Demo</strong></em> and <em><strong>boolean isEmptyOrNull</strong></em> as the function.</p>
  <pre><code>Demo var = list -&gt; list != null &amp;&amp; !list.isEmpty();
  </code></pre>
  <p>So each time I wish to check a list I can either use Method 1 or 2 by using <code>isEmptyOrNull(myList)</code> or <code>var.isEmptyOrNull(myList)</code> respectively.</p>
  <p><strong>My question is why should I use Method 1 and not Method 2 and vice versa. Is there some performance aspect or some other aspect as to why I should prefer one method over the other !?</strong></p>