title: List stream, get items with lowest price
body: <p>I have a <code>List&lt;Hotel&gt;</code>, each <code>Hotel</code> have a <code>BigDecimal minSellingPrice</code>, I want to get the <code>Hotel</code> with the minimum selling price.</p>
  
  <p>I was able to achieve this via this code</p>
  
  <pre><code>hotels.stream().min((h1, h2) -&gt; h1.getMinSellingPrice().compareTo(h2.getMinSellingPrice())).get()
  </code></pre>
  
  <p>But what if 3 hotels in the list have the minimum selling price in common, so the list have 50 hotels, lowest <code>minSellingPrice</code> is 100, 3 hotels out of 50 have a <code>minSellingPrice</code> of 100.</p>
  
  <p>How can I get a list of those 3 hotels so I can operate on them? The only thing I thought of is getting the minimum price via <code>map</code> and <code>min</code> then querying the list for the items that have this lowest price, but that doesn't sound too nice.</p>