Java 中是否有某种类似 HashMap 的数据结构可以按键或值排序?在 PHP 中,您可以拥有可排序的关联数组。 Java中有这样的东西吗?
最佳答案
HashMap
几乎按照定义是未排序的;一个好的散列函数会产生看似随机的 key 分布。
如果您想在 Java 中使用按排序顺序存储其元素的 Map
,请考虑查看 TreeMap
,它由排序的二叉搜索树支持。
如果您想要可以按键或按值排序的内容,您可能正在寻找双向映射或“双映射”。 Java 在其标准库中没有 on,我所知道的最接近的实现是 Google's BiMap
.但是,正如 Pangea 指出的那样,它不支持按排序顺序排列的元素。不过,您可以通过使用两个 TreeMap
轻松实现自己的实现,一个从键到值,一个从值到键。
希望这对您有所帮助!
关于java - Java 中可排序的类似 HashMap 的数据结构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5113688/