-2

我创建了一个哈希图,我将目录存储为键,然后将它们的内容存储为值。当我遍历哈希图并打印出我得到的所有内容时

files/abknl/bbxudleuf/jlffhq/y/xwjj/ell/ek.java
files/abknl/bbxudleuf/jlffhq/y/xwjj/ell/nu.java
files/abknl/bbxudleuf/jlffhq/y/xwjj/ell/os.java
files/abknl/bbxudleuf/jlffhq/y/xwjj/ell/njwqdp/di.html
files/abknl/bbxudleuf/jlffhq/y/xwjj/ell/njwqdp/po.html

然而我想得到的是

files/abknl/bbxudleuf/jlffhq/y/xwjj/ell/njwqdp/di.html
files/abknl/bbxudleuf/jlffhq/y/xwjj/ell/njwqdp/po.html
files/abknl/bbxudleuf/jlffhq/y/xwjj/ell/ek.java
files/abknl/bbxudleuf/jlffhq/y/xwjj/ell/nu.java
files/abknl/bbxudleuf/jlffhq/y/xwjj/ell/os.java

有任何想法吗?

为此,我正在对 hashmaps 键进行排序,然后打印每个键的值

4

3 回答 3

4

AHashMap通常不排序。SortedMap例如,您将需要使用TreeMap. 此类将允许您使用自己的Comparator,因此您可以根据需要对其内容进行排序。从TreeMap(Comparator<? super K>)构造函数 Javadoc:

构造一个新的空树映射,根据给定的比较器排序。

于 2012-11-20T17:34:17.533 回答
0

尝试使用具有合适的TreeMapComparator,然后putAll您的HashMap.

于 2012-11-20T17:34:15.537 回答
0

如果您需要以 . 开头HashMap,则可以创建new TreeMap(myHashMap). 这将具有相同的映射,但将按排序顺序遍历它们。

于 2012-11-20T17:34:55.990 回答