Ho un elenco di oggetti MoveTrack
che desidero raggruppare per mese e contare e memorizzare i dati in un Map<String, Double>
. Sto cercando di imparare Lambda e sperimentarlo così cercando di fare questo compito con Lambda.Raggruppamento e somma di una lista in una mappa utilizzando Lambda
class MoveTrack {
private Date time;
private Double movementAmount;
//getters and setters
}
// in my main method
List<MoveTrack> mveTracking = new ArrayList<>();
Map<String, Double> movMap = new HashMap<>();
quindi voglio essere in grado di raggruppare l'elenco moveTracking
e sommare i valori nella movMap
, con ogni Map Key = Month Nome (gennaio, febbraio, etc.) e il valore corrispondente alla quantità di movimento che è un somma dei doppi per quel mese.
Beh, hai provato ancora nulla? Sospetto che tu voglia utilizzare 'Stream.collect' e' Collectors.groupingBy'. –
E Collectors.summingDouble come collector downstream –
@JonSkeet yes ha tentato groupBy e toMap con nient'altro che errori. Soprattutto quando ho iniziato a inserire il simpledateformater. – Aeseir