i've been trying to figure out how to use java 8 streams to create a map like the one created by getCardValueCountMap method below:
public class Hand {
private final List<Card> hand = new ArrayList<>();
.....
public Map<CardValue, Integer> getCardValueCountMap(){
HashMap<CardValue, Integer> cardValueCountMap = new HashMap<>();
for (Card card : hand) {
final CardValue value = card.getValue();
Integer count = cardValueCountMap.get(value);
if (count == null){
cardValueCountMap.put(value, 1);
} else {
cardValueCountMap.put(value, count + 1);
}
}
return cardValueCountMap;
}
....
}