我有类型"产品"和一个类型'产品'的ArrayList包含多个产品对象。
产品
String ProductID;
int ProductRating;
我想遍历ArrayList
并按照ProductRating对这些产品进行排序;最高到最低,以便ArrayList
中的第一项包含最高评级,然后降低。
答案 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
}
});