This question already has answers here:
How to traverse Linked Hash Map in reverse? [duplicate]
(3个答案)
去年关闭。
我想以相反的顺序更改LinkedHashMap中的元素。像这样:
但是我没有找到任何可以帮助我做到这一点的东西。有人可以建议如何解决吗?
谢谢。
(3个答案)
去年关闭。
我想以相反的顺序更改LinkedHashMap中的元素。像这样:
public static void main(String[] args){
Map<String, Integer> map = new LinkedHashMap<>();
map.put("Hello", 2);
map.put("World", 1);
reverse(map);
System.out.println(map);// {Wordl=1, Hello=2}
}
public static void reverse(Map<String, Integer> map){
// Reverse my map...
}
但是我没有找到任何可以帮助我做到这一点的东西。有人可以建议如何解决吗?
谢谢。
最佳答案
您可以使用以下代码以相反的顺序进行迭代:
ListIterator<Map.Entry<String, Integer>> iterator = new ArrayList<Map.Entry<String, Integer>>(map.entrySet()).listIterator(map.size());
while (iterator.hasPrevious()) {
Map.Entry<String, Integer> entry = iterator.previous();
System.out.println(entry.getValue());
}
10-04 20:18