Например, у меня есть класс Person
class Person {
private String firstName;
private String lastName;
private String street;
...
}
Кроме того, у меня есть List<Person> personList
, который содержит несколько Person
объектов. Цель состоит в том, чтобы поместить эти объекты в Map<Person, Timer> personMap
в качестве ключей и добавить new Timer()
объекты в качестве значений. Таким образом, у каждого Person
есть один Timer()
.
Я пытаюсь сделать следующее:
personMap = personList.stream().collect(toMap(person -> person, new Timer()));
Но компилятор говорит: there is no instance(s) of type variable(s) T, U exist so that Timer conforms to Function<? super T, ? extends U>
. Я искал здесь into Map"> Список Java 8 в Map , но он не работает для меня.
Чего мне не хватает? Что не так с Timer()
классом?