public class CustomerOrder {
private final Gender gender;
private final Order order;
public Gender getGender() {
return gender;
}
public Order getOrder() {
return order;
}
}
public class Order {
private final long orderAmount;
public long getOrderAmount() {
return orderAmount;
}
}
I'd like to achieve the java streaming equivalent of:
SELECT Gender, SUM(orderAmount) FROM orders
GROUP BY Gender;
Thanks!
EDIT: I over simplified the problem - CustomerOrder contains an Order, which contains the orderAmount
I have managed to get to Map<Gender, List<Long>> by something like:
Map<Gender, List<Long>> map = orders.stream()
.collect(Collectors.groupingBy(CustomerOrder::getGender))