Я намагаюся придумати більш стислий вираз для параметра функції "keyMapper" у наступному Collectors.toMap()
виклику:
List<Person> roster = ...;
Map<String, Person> map =
roster
.stream()
.collect(
Collectors.toMap(
new Function<Person, String>() {
public String apply(Person p) { return p.getLast(); }
},
Function.<Person>identity()));
Здається, я мав би змогу вбудувати його за допомогою лямбда-виразу, але я не можу придумати такого, який компілює. (Я досить новачок у лямбда, тому це не є великим сюрпризом.)
Дякую.
-> Оновлення:
Як зазначено у прийнятій відповіді
Person::getLast
це те, що я шукав, і це те, що я спробував. Однак проблема полягала в нічній збірці Eclipse 4.3 BETA_8 - вона позначила це як неправильну. Під час компіляції з командного рядка (що я повинен був зробити перед публікацією), він спрацював. Отже, час подати помилку на eclipse.org.
Дякую.