使用Collections.sort()方法對於中文字符進行排序,並不是按照中文拼音的順序,原因是Collator類執行的是區分語言環境的String比較。
可調用Collator的靜態方法getInstance()來獲取所需語言環境的Collator對象。詳細信息可查詢API。
核心代碼為
1 class xxCompare implements Comparator 2 { 3 public int compare(Object one,Object two) 4 { 5 TestClass s1=(TestClass) one; 6 TestClass s2=(TestClass) two; 7 return Collator.getInstance(Locale.CHINA).compare(s1.getName(),s2.getName()); 8 } 9 }
此時Collections.sort(xx)方法應為Collections.sort(xx,new xxCompare());
