我编写了一个解析json并在listView中显示它的程序
现在我想对它进行排序,但不知道如何失败。
在程序中我有一个List<PoolOfflineModal> alist = new ArrayList<>();
所以模态是这样的;
public class PoolOfflineModal {
private int id;
private String name;
private int price;
private int priceWithoutDiscount;
private String tel;
private int discountPercent;
private String address;
private String photo;
}
,数据简单就在这里http://hayat.cloudsite.ir/pools/pools.json
所以我想按价格升级List
,所以更新ListView,我不知道......
另一个想法?!还是解决方案?!
是否存在另一种方法来从没有排序列表的列中对ListView进行排序?!?
答案 0 :(得分:0)
列出这样的对象:
List<PoolOfflineModal> alist = new ArrayList<>();
比较者类像这样:
public class MyComparator implements Comparator<PoolOfflineModal> {
@Override
public int compare(PoolOfflineModal o1, PoolOfflineModal o2) {
return o1.id.compareTo(o2.id);
}
}
使用像这样:
Collections.sort(alist, new MyComparator());
希望它对你有所帮助。
答案 1 :(得分:0)
这是我的最后一位比较者
public class MyComparator implements Comparator<PoolOfflineModal> {
@Override
public int compare(PoolOfflineModal lo, PoolOfflineModal ro) {
int result = 0;
if (way == "name") {
result = lo.getName().compareTo(ro.getName());
} else if (way == "price") {
result = lo.getPrice().compareTo(ro.getPrice());
} else if (way == "percent") {
result = lo.getDiscountPercent().compareTo(ro.getDiscountPercent());
}
return result;
}
}