lambda - Java8 how to use stream map with multiple fields -
i have pojo looks this:
public class record { private string description; private int score; private int multiple; // more data members // usual getters , setters } public class mykey { private string description; private int score; // usual getters , setters } record [] records= { new record (1/*score*/, "jack"), new record (2, "smith"), new record (12, "jill") }; list<record > list = arrays.aslist(records); // trying create map based on // part dont know how // how create map of key // description , score , make map map<key, list<record>> map = list.stream() .map(/*how write lambda or function here*/) .foreach(get());
how create map mykey key , record being data portion of map?
you use collect
groupingby
-collector:
record [] records= { new record (1/*score*/, "jack"), new record (2, "smith"), new record (12, "jill") }; map<key, list<record>> map = arrays.stream(records) .collect(collectors.groupingby( record -> new key(record.getscore(), record.getdescription()) ));
Comments
Post a Comment