相关疑难解决方法(0)

Collat​​or不适合给定的Locale

这是区域设置字母顺序:维基百科
这是我的代码:

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);
}
Run Code Online (Sandbox Code Playgroud)

这是输出:

Austrija
ç
Č
Grčka
Slovačka
斯洛文尼亚
Španija
Srbija的
Švajcarska
Švedska
Đ

正如您从上面的链接中看到的,这不是正确的顺序.
我究竟做错了什么?

java sorting collation internationalization

6
推荐指数
1
解决办法
2089
查看次数

在android中对阿拉伯语单词进行排序

我有一个阿拉伯语单词列表。

\n\n
\n

\xd8\xa7\xd9\x84\xd8\xa3\xd9\x8e\xd8\xad\xd9\x8e\xd8\xaf,\xd8\xa7\xd9\x84\xd8\xa7\xd9\x90\xd8\xab\ xd9\x86\xd9\x8e\xd9\x8a\xd9\x86、\xd8\xa7\xd9\x84\xd8\xab\xd9\x91\xd9\x8f\xd9\x84\xd8\xa7\xd8\xab\xd8 \xa7\xd8\xa1、\xd8\xa7\xd9\x84\xd8\xa3\xd9\x8e\xd8\xb1\xd8\xa8\xd9\x90\xd8\xb9\xd8\xa7\xd8\xa1、\xd8 \xa7\xd9\x84\xd8\xae\xd9\x8e\xd9\x85\xd9\x8a\xd8\xb3,\xd8\xa7\xd9\x84\xd8\xac\xd9\x8f\xd9\x85\xd8\ xb9\xd8\xa9,\xd8\xa7\xd9\x84\xd8\xb3\xd9\x91\xd9\x8e\xd8\xa8\xd8\xaa

\n
\n\n

我该如何排序(按字母排序)?

\n\n
\n\n

更新 :

\n\n

如何将 arrabicCollat​​or 设置为 Collections ?

\n\n
    Locale arrabic= new Locale("ar");\n    Collator arrabicCollator = Collator.getInstance(arrabic);\n\n    Collections.sort(arr_items, new Comparator<Helper>() {\n\n\n        @Override\n        public int compare(Helper one, Helper two) {\n            // TODO Auto-generated method stub\n            return one.getTitle().compareTo(two.getTitle());\n        }\n\n    });\n
Run Code Online (Sandbox Code Playgroud)\n\n

解决了 :

\n\n
    Locale arabic = new Locale("ar");\n    final Collator arabicCollator = Collator.getInstance(arabic);\n\n\n    Collections.sort(arr_items, new Comparator<Helper>() {\n\n\n        @Override\n        public int compare(Helper one, Helper two) {\n            // TODO Auto-generated …
Run Code Online (Sandbox Code Playgroud)

android

5
推荐指数
1
解决办法
810
查看次数

标签 统计

android ×1

collation ×1

internationalization ×1

java ×1

sorting ×1