Вы не: HashMap
изначально неупорядочен.
Вы можете использовать TreeMap
с пользовательским компаратором, но тогда вы должны знать, что если вы используете неравные объекты с тем же хеш-кодом,только один из них окажется на карте ... и даже в этом случае он будет упорядочен по ключам , а не по значениям.
Вы можете создать ArrayList<Integer>
, содержащий копиюзначения и отсортировать , что - но тогда у вас не будет ключей.
Вы можете создать ArrayList<Map.Entry<Integer, Integer>>
, содержащий копию записей , исортировать это ... но на самом деле, какой в этом смысл?
По сути, это странная вещь - хэш-коды должны не использоваться, как это, в основном.Они не уникальны, их не следует рассматривать как источник случайности и т. Д. Независимо от того, какая здесь более широкая картина, существует более подходящий подход.