首先 map排序
先是按照插入顺序排序 这里使用的是LinkedHashMap
LinkedHashMap<String, String> breadCrumbmap = getBreadCrumb(id);
Iterator it = breadCrumbmap.entrySet().iterator();
while (it.hasNext()) {
Map.Entry entry = (Map.Entry) it.next();
System.out.println("排序前" + entry.getValue());
}
ListIterator<Map.Entry<String, String>> i = new ArrayList<>(breadCrumbmap.entrySet()).listIterator(breadCrumbmap.size());
LinkedHashMap<String, String> linkedHashMap = new LinkedHashMap<String, String>();
while (i.hasPrevious()) {
Entry<String, String> entry = i.previous();
linkedHashMap.put(entry.getKey(), entry.getValue());
}
Iterator it1 = linkedHashMap.entrySet().iterator();
while (it1.hasNext()) {
Map.Entry entry = (Map.Entry) it1.next();
System.out.println("排序后" + entry.getValue());
}
结果为:
排序前第三层
排序前第二层
排序前第一层
排序前首页
排序后首页
排序后第一层
排序后第二层
排序后第三层