Java 使用recyclerview和cardview在android活动中读取JSON数组

Java 使用recyclerview和cardview在android活动中读取JSON数组,java,android,Java,Android,我知道如何解析JSON对象,如下所示 { "users": [{ "id": 2, "username": "user", "full_name": "user full name", "profilePicture": "/images/profileimage.png" }, { "id": 2, "us

我知道如何解析JSON对象,如下所示

  {
    "users": [{
            "id": 2,
            "username": "user",
            "full_name": "user full name",
            "profilePicture": "/images/profileimage.png"
        },

        {
            "id": 2,
            "username": "user2",
            "full_name": "user2 full name",
            "profilePicture": "/images/profileimage2.png"
        }
    ]
}
通过像这样使用recyclerview和cardview调用JSON对象

  try {
                JSONObject response = new JSONObject(result);
                JSONArray users= response.optJSONArray("users");
                feedsList = new ArrayList<>();

                for (int i = 0; i < users.length(); i++) {
                    JSONObject user = users.optJSONObject(i);
                    FeedItem item = new FeedItem();
                    item.setTitle(user.optString("full_name"));
                    item.setThumbnail(user.optString("profilePicture"));
                    feedsList.add(item);
                }
            } catch (JSONException e) {
                e.printStackTrace();
            }
任何人都知道我如何阅读这种类型的JSON,以[而不是{can help me

开头,请尝试以下方法:

      try {
                JSONObject response = new JSONObject(result);
                JSONArray users= response.getJSONArray("users");
                feedsList = new ArrayList<>();

                for (int i = 0; i < users.length(); i++) {
                    JSONObject user = users.getJSONObject(i);
                    FeedItem item = new FeedItem();
                    item.setTitle(user.getString("full_name"));
                    item.setThumbnail(user.getString("profilePicture"));
                    feedsList.add(item);
                }
            } catch (JSONException e) {
                e.printStackTrace();
            }
试试看{
JSONObject响应=新JSONObject(结果);
JSONArray users=response.getJSONArray(“用户”);
feedsList=新的ArrayList();
对于(int i=0;i
您的JSON错误

右JSON

   {
    "users": [{
            "id": 2,
            "username": "user",
            "full_name": "user full name",
            "profilePicture": "/images/profileimage.png"
        },

        {
            "id": 2,
            "username": "user2",
            "full_name": "user2 full name",
            "profilePicture": "/images/profileimage2.png"
        }
    ]
}
并将您的代码替换为

try {
                JSONObject response = new JSONObject(result);
                JSONArray users= response.getJSONArray("users");
                feedsList = new ArrayList<>();

                for (int i = 0; i < users.length(); i++) {
                    JSONObject user = users.getJSONObject(i);
                    FeedItem item = new FeedItem();
                    item.setTitle(user.getString("full_name"));
                    item.setThumbnail(user.getString("profilePicture"));
                    feedsList.add(item);
                }
            } catch (JSONException e) {
                e.printStackTrace();
            }
试试看{
JSONObject响应=新JSONObject(结果);
JSONArray users=response.getJSONArray(“用户”);
feedsList=新的ArrayList();
对于(int i=0;i
你的错误是你可以使用posts.length替换it用户。lenth

        try {

        JSONObject response = new JSONObject(result);
        JSONArray users= response.optJSONArray("users");
        feedsList = new ArrayList<>();

        for (int i = 0; i < users.length(); i++) {
            JSONObject user = users.optJSONObject(i);
            FeedItem item = new FeedItem();
            item.setTitle(user.optString("full_name"));
            item.setThumbnail(user.optString("profilePicture"));
            feedsList.add(item);
        }
    } catch (JSONException e) {
        e.printStackTrace();
    }
试试看{
JSONObject响应=新JSONObject(结果);
JSONArray users=response.optJSONArray(“用户”);
feedsList=新的ArrayList();
对于(int i=0;i
我设法首先调用JSONArray并解析JSONObject 如下

 try {

             JSONArray jArray = new JSONArray(result);

             feedsList = new ArrayList<>();

             for (int i = 0; i < jArray.length(); i++) {
                 JSONObject user = jArray.optJSONObject(i);
                 FeedItem item = new FeedItem();
                 item.setTitle(user.optString("full_name"));
                 item.setThumbnail(user.optString("profilePicture"));
                 feedsList.add(item);
             }
         } catch (JSONException e) {
             e.printStackTrace();
         }
试试看{
JSONArray jArray=新JSONArray(结果);
feedsList=新的ArrayList();
for(int i=0;i

谢谢你的想法帮了我这么多!!

有什么问题吗?你说你可以解析JSON,但后来你说你不能?@Knight请检查我的答案。你的JSON是错误的请检查JSON LINT并检查我的答案@Dennyboth你的JSON格式都不正确谢谢我想阅读以[和]开头的JSON
 try {

             JSONArray jArray = new JSONArray(result);

             feedsList = new ArrayList<>();

             for (int i = 0; i < jArray.length(); i++) {
                 JSONObject user = jArray.optJSONObject(i);
                 FeedItem item = new FeedItem();
                 item.setTitle(user.optString("full_name"));
                 item.setThumbnail(user.optString("profilePicture"));
                 feedsList.add(item);
             }
         } catch (JSONException e) {
             e.printStackTrace();
         }