2011-07-04 72 views
-1

是否存在java util方法或通过该类型的属性对某种类型的数组进行排序的简短方法。我目前有一组Choice类型对象,其中每个对象都有一个返回选择的可视表示的getText()方法。我可以创建一个很长的方法,创建一个选择文本数组,排序它们,获得它们的有序索引,然后通过该索引来排序选择,但我确实认为存在某种快捷方式。通过属性排序对象的数组

有什么建议?

回答

4
Collections.sort(list, new Comparator<Choice>(){ 
public int compare (Choise c1, Choice c2) { 
    return c1.getText().compareTo(c2.getText()); 
} 
}); 

附加检查是否为空,如果有必要

你可以移动比较外部类,并使用反射来从任何对象中读取自定义字段。但这会使代码不太可以理解

+0

是的,并且可以与'Arrays.sort()'一起使用。 – Marcelo

相关问题