要实现对Jia,Liu,Li,Ji,Deng,Zhang,Zhao 等类似的从A到Z排序
public class Name implements Comparable<Name> {
public String name;
@Override
public int compareTo(Name another) {
// 从大到小排列
String otherName = PinyinUtil.hanziToPinyin(another.name);
return name.compareTo(another.name);
}
}
把这个含有名称的定义为一个类,当时还可以含有其他属性,而以Name进行索引排序。把这个类继承 Comparable ,然后实现方法。
List<Name> nameList = new ArrayList<>();
Name name = new Name();
name.name = "Jia";
nameList.add(name);
Name name1 = new Name();
name1.name = "Char";
nameList.add(name1);
Name name5 = new Name();
Name name6 = new Name();
name6.name = "Sheng";
nameList.add(name6);
name5.name = "Haha";
nameList.add(name5);
Name name2 = new Name();
name2.name = "Liu";
nameList.add(name2);
Name name3 = new Name();
name3.name = "Min";
nameList.add(name3);
Collections.sort(nameList);
把数据放到List之后,用 Collections.sort() 对类即进行排序