TreeMap中如何对数字,英文字母,中文排序呢?
下文笔者讲述TreeMap中对数字,英文字母排序的方法分享,如下所示:
实现思路:
定义一个外部比较器即可实现对数字,英文字母的比较
(在外部比较器中借用比较器的compareTo方法)
例:
package com.java265.other;
import java.util.Map;
import java.util.TreeMap;
public class Test {
public static void main(String[] args) throws Exception {
Map<String, Integer> m = new TreeMap<>();
m.put("java", 8);
m.put("c", 33);
m.put("python", 44);
m.put("cSharp", 11);
System.out.println(m);
System.out.println("------------");
Map<String, Integer> m2 = new TreeMap<>((o1, o2) -> {
return ((String) o2).compareTo(o1);
});
m2.put("java", 8);
m2.put("c", 33);
m2.put("python", 44);
m2.put("cSharp", 11);
System.out.println(m2);
}
}
-----运行以上代码,将输出以下信息----
{c=33, cSharp=11, java=8, python=44}
------------
{python=44, java=8, cSharp=11, c=33}
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。


