一、对象数组
数字类型:
降序:
Collections.sort(list, new Comparator<ProductManagements>() {
//调用sort()方法,并实现Comparator接口中的compare()方法
@Override
public int compare(ProductManagements o1, ProductManagements o2) {
int value = Integer.valueOf(o2.getSort()) - Integer.valueOf(o1.getSort());
return value;
}
});
升序:
Collections.sort(mList, new Comparator<ProductManagements>() {
//调用sort()方法,并实现Comparator接口中的compare()方法
@Override
public int compare(ProductManagements o1, ProductManagements o2) {
int value = Integer.valueOf(o1.getSort())-Integer.valueOf(o2.getSort());
return value;
}
});
拼音排序:
Collections.sort(pages.getRecords(), new Comparator<ChargeRecord>() {
@Override
public int compare(ChargeRecord o1, ChargeRecord o2) {
Collator cmp=Collator.getInstance(Locale.CHINA);
return cmp.compare(o1.getContractName(), o2.getContractName());
}
});
对象数据多个字段排序:
Comparator<ProductManagement> f = Comparator.comparing(ProductManagement::getFirstMenu);
Comparator<ProductManagement> m =Comparator.comparing(ProductManagement::getSecondaryMenu);
Comparator<ProductManagement> s = Comparator.comparing(ProductManagement::getSort);
pages.getRecords().sort(f.thenComparing(m).thenComparing(s));