Java Stream API: Gibt es Syntaxzucker für Identity Funktor?
Wir verwenden mehrereMap
als einfacher Speicher-DB über Liste von Objekten:
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));
ibt es eine Syntax Zucker oder eingebauten Funktor in Java SE zu ersetzenp -> p
mit etwas anderem?