Java:排序(ArrayList中的项目的属性

时间:2015-02-05 11:07:27

标签: java android class sorting arraylist

我有类型"产品"和一个类型'产品'的ArrayList包含多个产品对象。

产品

String ProductID;
int ProductRating;

我想遍历ArrayList并按照ProductRating对这些产品进行排序;最高到最低,以便ArrayList中的第一项包含最高评级,然后降低。

2 个答案:

答案 0 :(得分:0)

使用以下解决方案

public class ProductRatingSort implements Comparator<Product> {

@Override
public int compare(Product arg0, Product arg1) {
    // TODO Auto-generated method stub
    int f = arg0.getProductRating();
    int s = arg1.getProductRating();

      if(f>s)
       return 1;
    return -1;
}
}

然后从你要对arraylist进行排序的地方调用它

Collections.sort(arrProduct, new ProductRatingSort());   // your array list

答案 1 :(得分:0)

您可以使用Collections.sort(List<T> list, Comparator<? super T> c)来实施 就这样

Collections.sort(productList, new Comparator<Product>() {
    @Override
    public int compare(Product p1, Product p2) {
        return p1.ProductRating - p2.ProductRating; // Ascending
    }
});