hashmap排序sort方法
HashMap是一个无序的集合,根据键来存储和检索值,但是在某些情况下,需要按照键的顺序来遍历HashMap,这时就需要对HashMap进行排序操作。
HashMap提供了一个sort方法,可以对HashMap按键的顺序进行排序。sort方法需要传入一个Comparator对象,该对象用于比较HashMap中的键值。
比较器Comparator是一个函数,它接受两个参数,并返回一个整数值,表示这两个参数的比较结果。如果第一个参数小于第二个参数,则返回负整数;如果第一个参数大于第二个参数,则返回正整数;如果两个参数相等,则返回零。
下面是一个示例程序,展示如何使用HashMap的sort方法进行排序:
```
import java.util.*;
public class HashMapSortExample {
public static void main(String[] args) {
Map<String, Integer> map = new HashMap<>();
用sort out map.put('John', 25);
map.put('Mary', 30);
map.put('Peter', 20);
map.put('Tom', 35);
List<Map.Entry<String, Integer>> list = new ArrayList<>(Set());
Collections.sort(list, new Comparator<Map.Entry<String, Integer>>() {
public int compare(Map.Entry<String, Integer> o1, Map.Entry<String, Integer> o2) {
Key()Key());
}
});
for (Map.Entry<String, Integer> entry : list) {
System.out.Key() + ' : ' + Value());
}
}
}
```
上述程序使用了HashMap的entrySet方法,返回一个包含键值对的集合。然后,将集合转换为List,并使用Collections.sort方法进行排序。排序时,传入了一个比较器,该比较器按照键的顺序进行比较。
最后,遍历排序后的List,输出键值对。
通过上述示例程序,可以看出HashMap的sort方法非常实用,可以方便地对HashMap按键排序。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论