import java.util.Comparator;
import java.util.Iterator;
import java.util.Map;
import java.util.TreeMap;
public class Test implements Comparator<String> {
@Override
public int compare(String o1, String o2) { //重写排序
return o2.compareTo(o1);//无论如何改这个表达式,排序结果都不变,甚至直接写成1或-1
}
public static void main(String[] args) {
Map map = new TreeMap<String, Integer>();
map.put("690以上", 20);// 添加数据
map.put("689以上", 6);
map.put("688以上", 6);
map.put("687以上", 5);
map.put("686以上", 5);
Iterator it = map.keySet().iterator();// 创建迭代器,遍历打印
while (it.hasNext()) {
String key = (String) it.next();
System.out.println(key + "\t" + map.get(key));
}}}
以上代码中的重写排序方法好像不起作用,return o2.compareTo(o1);和return o1.compareTo(o2);的排序结果都一样,甚至return -1和return 1的排序结果都一样,不知道错在那里?求指导,谢谢老师