Как сказал Джим в своем (удаленном) ответе, вы помещаете один и тот же ключевой объект на карту несколько раз, что приведет к замене предыдущего значения.
Но установка нового массива для каждого элемента также не будет лучше - тогда у вас будет больше пар ключ-значение, но вы не сможете получить к ним доступ с помощью метода get
, если у вас нет правый объект массива (и тогда вы также можете иметь значение), так как массивы не реализуют .equals
и hashCode
.
Чтобы предложить решение: вы можете использовать List<Point>
в качестве типа ключа и использовать новый список для каждой пары ключевых точек. Убедитесь, что вы не изменили список после помещения его в качестве ключа на карту. (Вы можете обернуть его в Collections.unmodifiableList, чтобы убедиться в этом.)
Альтернативой может быть некоторый пользовательский класс парных точек (с собственным hashCode и реализацией equals).