首页 > 解决方案 > 如何将 JSON 字符串转换为对象的 Arraylist

问题描述

我有从 HTTP 请求收到的 JSON 字符串:

     [  
       {  
      "id":15,
      "title":"1",
      "description":"desc",
      "user_id":152
     },
    {  
      "id":18,
      "title":"2",
      "description":"desc",
      "user_id":152
    },
    {  
      "id":19,
      "title":"tab3",
      "description":"zadanka",
      "user_id":152
   }
]

如何将其转换为对象的 ArrayList?

标签: javajsonarraylist

解决方案


你需要声明一个pojo

class Data{
  String id;
  String title;
  String description;
  String userId;
  //Generate setter an getter
}

对 json 的迭代如下:

JSONArray jsonArr = new JSONArray("[your JSON Stirng]");
    List<Data> dataList = new ArrayList<Data>();
    for (int i = 0; i < jsonArr.length(); i++) {
        JSONObject jsonObj = jsonArr.getJSONObject(i);
        Data data = new Data();
        data.setId(jsonObj.getString("id"));
        data.setTitle(jsonObj.getString("title"));
        data.setDescription(jsonObj.getString("description"));
        data.setUserId(jsonObj.getString("user_id"));
        dataList.add(data);
    }

你还需要 json jar。你可以从这里下载


推荐阅读