是否有java util方法,或者通过该类型的属性对某种类型的Array进行排序的简短方法。我目前有一个Choice
类型对象数组,每个对象都有一个getText()
方法,返回所选内容的可视化表示。我可以创建一个很长的方法,创建一个选择文本的数组,排序它们,得到它们的有序索引,然后按索引排序选择,但我肯定认为有一种快捷方式。
任何建议?
答案 0 :(得分:4)
Collections.sort(list, new Comparator<Choice>(){
public int compare (Choise c1, Choice c2) {
return c1.getText().compareTo(c2.getText());
}
});
必要时添加检查空值
您可以将比较器移动到外部类,并使用反射从任何对象读取自定义字段。但这会使代码不易理解