java - 根据 json 中的 ID 对 fragment 中的项目进行排序

标签 java android json

嘿,我想通过 json 中的 id 将项目从新到旧排序 我希望新项目出现在列表顶部 我正在使用这段代码

try {
    JSONObject mainJson = new JSONObject(result);
    JSONArray jsonArray = mainJson.getJSONArray(Constant.ARRAY_NAME);
    JSONObject objJson = null;

    for (int i = 0; i < jsonArray.length();  i++) {
        objJson = jsonArray.getJSONObject(i);

        ItemWallpaper objItem = new ItemWallpaper();

        objItem.setWallId(objJson.getString(Constant.WALL_ID));
        objItem.setWallImage(objJson.getString(Constant.WALL_IMAGE));

        arrayOfLatestImage.add(objItem);
    }
} catch (JSONException e) {
    e.printStackTrace();
}

for(int j=0;j<arrayOfLatestImage.size(); j++)
{
    objAllBean=arrayOfLatestImage.get(j);

    allListImage.add(objAllBean.getWallImage());
    allArrayImage=allListImage.toArray(allArrayImage);

    allListId.add(objAllBean.getWallId());
    allArrayId=allListId.toArray(allArrayId);
 }

最佳答案

我不完全理解你的代码。但我假设您只想按 ItemWallpaper 对象的 wallId 排序 arrayOfLatestImage

您正在寻找的关键字是java中的“comperator”。 小例子取自Java Comparator class to sort arrays

Arrays.sort(twoDim, new Comparator<int[]>() {
  @Override
  public int compare(int[] o1, int[] o2) {
      return ((Integer) o2[0]).compareTo(o1[0]);
  }
});

查看此处了解更多信息 https://docs.oracle.com/javase/7/docs/api/java/util/Comparator.html

关于java - 根据 json 中的 ID 对 fragment 中的项目进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41656932/

相关文章:

java - Solr 3.4 内存不足

java - 为什么 '<' , '> ' 与包装类一起使用,而 '==' 却不行?

android - 请求推送通知的权限

android - React Native - 在单个应用程序中组合 2 种导航类型

json - 如果列名称包含APOSTROPHE(),则无法在SQLSERVER中插入JSON数据

json - 如何使用 Boto3 从 Amazon S3 读取大型 JSON 文件

java - 我可以在工厂中创建 Callable 并通过调度程序执行它们吗?

java - 在 android 中使用 SOAP 本地 Web 服务

android - 为海豚安卓浏览器写一个插件

javascript - 在 NodeJs 端点中引用 JSON 对象时未定义“id”