Comparator na retezce s diakritikou

Masaj masaj.xxx na seznam.cz
Čtvrtek Říjen 29 15:33:55 CET 2009


Pouzij java.text.Collator



danisevsky wrote:
> Ahoj, resim trivialni problem, jak seradit podle abecedy list stringu. 
> Respektive potrebuju komparator, ktery spravne porovna i znaky s 
> diakritikou. Toto je mala ukazka problemu:
>
>     public static void main(String[] args) {
>         String[] s = { "z", "a", "ř", "c", "č" };
>         List<String> list = Arrays.asList(s);
>         printList(list);
>         Collections.sort(list, new Comparator<String>() {
>             public int compare(String o1, String o2) {
>                 return o1.compareTo(o2);
>             }
>         });
>         printList(list);
>     }
>
>     private static void printList(List<String> l) {
>         for (String string : l) {
>             System.out.print(string + " ");
>         }
>         System.out.println();
>     }
>
> vysledek:
> z a ř c č
> a c z č ř
>
> Cekal bych, ze bude existovat neco jako SringsComparator, kterymu 
> predam cz locale a on si s tim poradi, ale nic takoveho sem bohuzel 
> nenasel.
> Predem diky za pripadnou odpoved.




Další informace o konferenci Konference