为了账号安全,请及时绑定邮箱和手机立即绑定

从Android中的JSON对象对JSON数组进行排序?

从Android中的JSON对象对JSON数组进行排序?

一只萌萌小番薯 2021-07-16 18:01:08
我有下一个 JSON 响应:[{    format: "jpeg",    id: 001,    author: "Mery Rose"},{    format: "jpeg",    id:002,    author: "Alex Turner"}通过此 Get 调用,我按 ID 顺序获取:001、002@GET("/list")Call<ArrayList<Groups>> imageList();我需要按作者排序,先获得亚历克斯,然后获得梅里。请帮忙。
查看完整描述

3 回答

?
慕森卡

TA贡献1806条经验 获得超8个赞

我认为Retrofit不会直接对响应提供内置排序。


对于排序响应,您必须使用 如下比较器手动完成


Collections.sort(imageList, new Comparator<Groups>() {

    @Override

    public int compare(Groups g1, Person g2) {

        return g1.getAuthor().compareTo(g2.getAuthor());

    }

});


查看完整回答
反对 回复 2021-07-29
?
千巷猫影

TA贡献1829条经验 获得超7个赞

像这样使用集合


Collections.sort(imageList, new Comparator<Groups>() {

public int compare(Groups G1, Groups G2) {

    return G1.getAuthor().compareTo(G2.getAuthor());

}

});


查看完整回答
反对 回复 2021-07-29
?
开满天机

TA贡献1786条经验 获得超13个赞

作为@NJ 答案的替代方案,您可以使用新的 Java 8Comparator.comparing工厂,您可以在其中提供一个函数来提取比较对象时要使用的值。

Collections.sort(imageList, Comparator.comparing(Groups::getAuthor));


查看完整回答
反对 回复 2021-07-29
  • 3 回答
  • 0 关注
  • 251 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信