We use several Map as a simple DB memory for a list of objects:
class Person { public String id; public String phone; public String email; // and get/set and other fields... } List<Person> persons; Map<String, Person> emailLookup = persons.stream() .collect(Collectors.toMap(Person::getEmail, p -> p)); Map<String, Person> phoneLookup = persons.stream() .collect(Collectors.toMap(Person::getPhone, p -> p)); Map<String, Person> idLookup = persons.stream() .collect(Collectors.toMap(Person::getId, p -> p));
Is there any syntactic sugar or inline functor in Java SE to replace p -> p with something else?
source share