import java.text.Collator;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.Iterator;
public class ChineseCharacterSortDemo {
public static void main(String args[]) {
ArrayList list = new ArrayList();
list.add(new Country(86, "中国"));
list.add(new Country(21, "加拿大"));
list.add(new Country(1, "美国"));
list.add(new Country(110, "阿富汗"));
Comparator cmp = new ChinsesCharComp();
Collections.sort(list, cmp);
Iterator iter = list.iterator();
while (iter.hasNext()) {
Country s1 = (Country) iter.next();
System.out.println(s1.getCode() + "----" + s1.getName());
}
}
}
class ChinsesCharComp implements Comparator {
public int compare(Object o1, Object o2) {
Country c1 = (Country) o1;
Country c2 = (Country) o2;
Collator myCollator = Collator.getInstance(java.util.Locale.CHINA);
if (myCollator.compare(c1.getName(), c2.getName()) < 0)
return -1;
else if (myCollator.compare(c1.getName(), c2.getName()) > 0)
return 1;
else
return 0;
}
}
class Country {
private long code;
private String name;
public long getCode() {
return code;
}
public void setCode(long code) {
this.code = code;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Country() {
}
public Country(long code, String name) {
this.code = code;
this.name = name;
}
}
java list 中文排序
最新推荐文章于 2023-09-03 18:43:31 发布