哈希表遍历顺序

Hashtable traversal order

我了解散列 table 文档不保证插入或比较顺序。但是,我是否有可能在工作流的每次迭代中获得相同的顺序。

背景资料 我在 Java 中编写了很多代码,我对任何顺序都很好,但是出于测试目的,我希望顺序在每个 运行.

上保持一致

例如,

digraph {
SmartTV_On -> {Off SmartTV_Off }
Off -> {SmartTV_Off }
SmartTV_Off -> {SmartTV_On }
}

digraph {
Off -> {SmartTV_Off }
SmartTV_On -> {Off SmartTV_Off }
SmartTV_Off -> {SmartTV_On }
}

Hashtable 已过时,您将使用 HashMap。

对于这个具体问题,LinkedHashMap保证按插入顺序遍历。 TreeMap 保证以提供的基于比较的顺序遍历(例如,如果您按该顺序添加键 1、5、2、9 和 3,它会以 1、2、3、5、9 返回.