用Java排序数据结构

时间:2016-05-09 22:00:00

标签: java sorting data-structures

我在Java中有一个数据结构,如下所示:

class Order {
    int id;
    String name;
    int totalCost;
    String address; 
    List<String> items;

    public setter() {
        .... 
    }

    public getter() {
        ...
    } 
}

我有一个使用此数据结构的测试类:

class TestClass {
    List<Order> o = getAllOrders();
    sortOrders();
}

我想编写一个sortOrders方法,根据其中一个属性对此数据结构进行排序,在本例中为订单上的名称。

我知道用Java排序我们可以做到:

java.util.Collections.sort(anyArrayListOfStrings);

用Java对整个数据结构进行排序的有效方法是什么?

1 个答案:

答案 0 :(得分:0)

嗯,您只需将比较器传递给Collections.sort()方法即可。你可以这样做,因为你想根据Order字段对name个对象的列表进行排序。

Collections.sort(o, new Comparator<Order>() {
    public int compare(Order o1, Order o2) {
        return o1.name.compareTo(o2.name);
    }
});