0
我正在为我的项目使用JDK 1.7。我碰到了哈德尔。我有一个对象的ArrayList有两个属性:价格(十进制)和产品名称(字符串)。我需要先按价格再按产品名称对ArrayList进行排序。我试过使用Java比较器,但我只能通过一个属性进行排序。 下面是我的代码:对具有两个属性的对象排序ArrayList
private static class PriceComparator implements Comparator<Product>{
@Override
public int compare(Product p1, Product p2) {
return (p1.getPrice() > p2.getPrice()) ? -1: (p1.getPrice() < p2.getPrice()) ?
1:0 ;
}
}
这个代码只排序的价格,而不是名字。
请我apprecaite你的帮助和例子。
感谢 伊什
告诉我们,你已经写了comperator ... – 2013-03-22 12:12:31
的“比较器”实际上应该足够了。确保你先按价格再按产品名称进行比较。 – 2013-03-22 12:13:45
编写一个比较器,比较第一个值,如果这些值相等,则比较第二个值。 – Simulant 2013-03-22 12:13:48