In a case like this:
public class Order { List<Double> prices = List.of(1.00, 10.00, 100.00); List<Double> pricesWithTax = List.of(1.22, 12.20, 120.00); Double sumBy(/* method reference */) { Double sum = 0.0; for (Double price : /* method reference */) { sum += price; } return sum; } public List<Double> getPrices() { return prices; } public List<Double> getPricesWithTax() { return pricesWithTax; } } how can I declare the sumBy method in a way that can be called like this:
Order order = new Order(); var sum = order.sumBy(order::getPrices); var sumWithTaxes = order.sumBy(order::getPricesWithTax); I'm not using the Java 8 API for the sum because my goal is only to understand how pass a method reference.