Rajkumar Natarajan:
Tengo por debajo de la definición de clase de Entry
-
public class Entry {
private String key;
private String Value;
// getters and setters
// equals hashcode toString
}
Tengo Lista de Entry
los objetos de la base de datos. Quiero grupo de ellos basados en clave y los valores del resultado Mapa debe ser Set<value>
.
Probé y terminar con el código de abajo.
Map<String, Set<Entry>> groupedEntries =
entryList.findAll()
.stream()
.collect(Collectors.groupingBy(ek -> ek.getKey().toLowerCase(), Collectors.toSet()));
El problema con este código es el tipo de resultado es Map<String, Set<Entry>>
, pero yo quiero ser Map<String, Set<String>>
.
¿es posible hacer esto en un solo cobro revertido?
Ousmane D .:
utilizar el mapping
colector:
.collect(Collectors.groupingBy(ek -> ek.getKey().toLowerCase(),
Collectors.mapping(Entry::getValue, Collector.toSet())));