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