I have already gone through few examples and those did not work for me.
Here is what I am trying to do:
I have a List<SomeClass> of the following class:
class SomeClass {
String rid;
String name;
...
}
The values in my List look like this:
SomeClass(1,"apple")
SomeClass(1,"banana")
SomeClass(1,"orange")
SomeClass(2,"papaya")
SomeClass(2,"peaches")
SomeClass(3,"melons")
I want to convert the above List into a Map<String, Set<String>>, where key is rid and value is Set of name field.
To solve this using Java Streams I am using groupingBy and I could come to below solution:
someClassList
.stream()
.map(SomeClass::getName)
.collect(
Collectors.groupingBy(
SomeClass::getRid, Collectors.toSet()));
But this gives me compilation error. How do I solve this and what is the problem with my approach?