我使用了TreeMap键是a的位置String,值是类型Integer.当我输出Map对象时,它不按排序顺序打印.
这是我使用的代码:
TreeMap<String, Integer> m = new TreeMap<String, Integer>();
m.put("Hello", 1);
m.put("world", 2);
m.put("Zertt", 5);
m.put("Hello", 1);
m.put("world", 2);
System.out.println("map : " + m);
Run Code Online (Sandbox Code Playgroud)
我希望输出像这样排序:
map:{Hello = 1,world = 2,Zertt = 5}
但相反,我得到了这个:
map:{Hello = 1,Zertt = 5,world = 2}
Era*_*ran 18
Strings 的自然顺序区分大小写,所以Z之前w(所有大写字母都在所有小写字母之前).
使用
TreeMap<String, Integer> m = new TreeMap<String, Integer>(String.CASE_INSENSITIVE_ORDER);
Run Code Online (Sandbox Code Playgroud)
对于不区分大小写的顺序.