Код: Выделить всё
package jp.co.nisz.batch;
import java.text.Collator;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Locale;
public class JapaneseSort {
public static void main(String[] args) {
List names = new ArrayList();
names.add("にんにく粉末");
names.add("アルファルファミール");
names.add("オリーブ葉");
names.add("とうふかす");
Collator jaCollator = Collator.getInstance(Locale.JAPANESE);
jaCollator.setStrength(Collator.TERTIARY);
jaCollator.setDecomposition(Collator.CANONICAL_DECOMPOSITION);
Collections.sort(names, jaCollator);
System.out.println("Sorted List:");
for (String name : names) {
System.out.println(name);
}
// Expected Result(Oracle Result): とうふかす, にんにく粉末, アルファルファミール, オリーブ葉
// Real Result: アルファルファミール, オリーブ葉, とうふかす, にんにく粉末
}
}
Подробнее здесь: https://stackoverflow.com/questions/798 ... characters