自定义基于属性的对象ArrayList的随机排序

时间:2015-03-27 07:12:48

标签: java collections

我有一份POJO清单。我想根据需求文档中给出的自定义顺序中的一个属性对此列表进行排序。此属性是String类型。没有可能的自然排序,因为所需的顺序不遵循字母顺序或任何其他顺序。除了手动操作之外,还有什么办法可以解决这个问题吗?

4 个答案:

答案 0 :(得分:0)

您的意思是手动?你总能做到

Collections.sort(yourList, new Comparator<String>(){
//implement your compare method in the way your doc describes it
});

答案 1 :(得分:0)

是肯定的。将自己的Comparator写入自定义元素,然后将其传递给Collections.sort()

答案 2 :(得分:0)

您需要实现Comparable接口并覆盖compareTo()方法。

例如:假设您想根据学生ID对学生列表进行排序,那么您可以这样做:

@Override
public int compareTo(Student stu) {
    return (this.id - stu.id);
}

答案 3 :(得分:0)

我使用了比较器以及定义的排序顺序(这是我要查找的内容)。这将按照我想要的顺序给出列表。