原文地址:http://zazawind.appspot.com/?p=15001
转载请注明来源 http://zazawind.appspot.com
对于List列表接口的排序通常用的是Collections.sort(List list, Comparator
c)
方法,因此比较器部分Comparator需要自己去写。以下是一个按拼音正、反排序的功能类。
import java.text.Collator; import java.util.Comparator; public class PinyinComparator implements Comparator { public final static int UP = 1; public final static int DOWN = -1; private int state; Comparator cmp = Collator.getInstance(java.util.Locale.CHINA); public PinyinComparator(int state) { this.state = state; } public PinyinComparator() { this.state = SortString.UP; } @Override public int compare(String o1, String o2) { // TODO Auto-generated method stub if (state == SortString.DOWN ) { return sortDown(o1, o2); } else return sortUp(o1, o2); } private int sortUp(String o1, String o2) { return cmp.compare(o1, o2); } private int sortDown(String o1, String o2) { int result = cmp.compare(o1, o2); if ( result > 0) { return -1; } else if ( result < 0) { return 1; } else { return 0; } } } |
转载请注明来源
http://zazawind.appspot.com