我将DataNode
个对象存储在ArrayList
中。 DataNode
类有一个名为degree
的整数字段。
我想以DataNode
的递增顺序从nodeList中检索degree
个对象。我怎么能这样做。
List<DataNode> nodeList = new ArrayList<DataNode>();
答案 0 :(得分:164)
使用自定义比较器:
Collections.sort(nodeList, new Comparator<DataNode>(){
public int compare(DataNode o1, DataNode o2){
if(o1.degree == o2.degree)
return 0;
return o1.degree < o2.degree ? -1 : 1;
}
});
答案 1 :(得分:59)
修改DataNode类,使其实现Comparable接口。
public int compareTo(DataNode o)
{
return(degree - o.degree);
}
然后只需使用
Collections.sort(nodeList);
答案 2 :(得分:0)
您可以使用Bean Comparator对自定义类中的任何属性进行排序。