我在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对整个数据结构进行排序的有效方法是什么?
答案 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);
}
});