这是语言环境的字母顺序:wikipedia
这是我的代码:
public static void main(String[] args) {
Locale loc = new Locale("sr","RS");
Collator col = Collator.getInstance(loc);
col.setStrength(Collator.SECONDARY);
List<String> slova = new ArrayList<String>();
slova.add("Austrija");
slova.add("Slovačka");
slova.add("Č");
slova.add("Đ");
slova.add("C");
slova.add("Grčka");
slova.add("Slovenija");
slova.add("Španija");
slova.add("Švajcarska");
slova.add("Švedska");
slova.add("Srbija");
Collections.sort(slova,col);
for(String s: slova)
System.out.println(s);
}
这是输出:
Austrija
C
C
Grčka
Slovačka
斯洛维尼亚
什帕尼亚
斯比贾
Švajcarska
什韦德斯卡
Đ
从上面的链接可以看到,这不是正确的顺序。
我究竟做错了什么?
最佳答案
正如我在您的wikipedia页面上发现的,@ Vash是他的ISO链接。我认为您是说“sr”塞尔维亚?然后,您将必须选择“cs”作为国家。
编辑:这取决于您使用的Java版本。 Java 6使用新的iso标准。