Java中 map集合能排序吗?

如题所述

Java中的Map默认是对元素不排序的,但是Map的实现类TreeMap能够把它保存的记录根据key排序,默认是按升序排序。如果我们想要改变排序方式,则需要使用比较器:Comparator。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-07-25
可以的,Java中的map ,list ,set 三个之间都是可以相互的转换的!
举个例子:map 转换成List 后就可以排序了~

public class test {

public static void main(String[] args) {
Map<String,String> maps = new HashMap<String,String>();
maps.put("1", "one");
maps.put("2", "two");
maps.put("3", "three");
List list = mapTransitionList(maps);
for(int i=0; i<list.size(); i++) {
System.out.println(list.get(i));
}

}

private static List mapTransitionList(Map<String, String> maps) {
List list = new ArrayList();
Iterator iter = maps.entrySet().iterator(); //获得map的Iterator
while(iter.hasNext()) {
Entry entry = (Entry)iter.next();
list.add(entry.getValue());
}
return list;

}

}本回答被网友采纳
第2个回答  2013-07-25
map中本来就是按照key的值从小到大排了序的
第3个回答  2018-08-16

这篇文章还不错,非常有帮助:

网页链接

第4个回答  2013-07-25
相似回答