I want to use **java streams** to iterate a **list** and find the `BigDecimal` minimum price. The following illustrates, but does not work (because `min()` cannot accept `BigDecimal`.

```
class Product {
    public BigDecimal price;
}

List<Product> products;
products.stream().min((Product) p -> p.price);

```