JAVA Set Iterator遍历的顺序是怎么样的?

2024-12-03 06:44:43
推荐回答(3个)
回答1:

HashMap散列图、Hashtable散列表是按“有利于随机查找的散列(hash)的顺序”。并非按输入顺序。
遍历时只能全部输出,而没有顺序。
甚至可以rehash()重新散列,来获得更利于随机存取的内部顺序。

总之,遍历HashMap或Hashtable时不要求顺序输出,即与顺序无关。

如果需要顺序,请使用List的子类,都是有序的。

回答2:

可以用java.util.LinkedHashMap 就是按加入时的顺序遍历了。
类似的还有 java.util.LinkedHashSet

回答3:

HashMap中的数据是无序的,如果你想有有序的话可以使用TreeMap,查查JAVA API就知道了。楼上的很正解。