Android期末项目(一)—— 解析二维数组对象

【第一部分】历史文章:
Android学习笔记(一)——创建第一个Android项目
Android学习笔记(二)android studio基本控件及布局(实现图片查看器)
Android学习笔记(三)android studio中CheckBox自定义样式(更换复选框左侧的勾选图像)
Android学习笔记(四)Android 中Activity页面的跳转及传值
Android学习笔记(五)——Toast提示、Dialog对话框、Menu菜单
Android学习笔记(六)——自定义ListView布局+AsyncTask异步任务
Android学习笔记(七)——数据存储(共享参数SharedPreferences)
Android学习笔记(八)——数据存储(SD卡文件操作)
Android学习笔记(九)——网络技术
Android学习笔记(十)——实现新闻列表案例
Android学习笔记(十一)——一些高级控件的使用
Android学习笔记(十二)——数据存储(SQLite数据库)
Android学习笔记(十三)——数据存储(LitePal操作数据库)
Android学习笔记(十四)——内容提供器
Android学习笔记(十五)——侧滑容器(ViewPager)
【第二部分】主要问题解决:
Android Studio(存)读取不了SD卡上的文件——【已解决】


今天在做Android期末项目时候,展示微博热搜列表的时候需要对网络接口数据进行解析。
下面是用Postman测试的接口数据。
在这里插入图片描述
针对上面的二维数组数据进行解析:

package cn.edu.hznu.com.utils;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import java.util.ArrayList;
import cn.edu.hznu.com.bean.HotNews;
public class HotNewsJsonUtils {
    public static ArrayList<HotNews> parseJson(String jsondata) {
        ArrayList<HotNews> result = new ArrayList<>();
            JSONObject object = null;
            try {
                object = new JSONObject(jsondata);
                if (object.getString("message").equals("操作成功!")) {
                    JSONArray array = object.getJSONArray("retdata");
                    for (int i = 0; i < array.length(); i++) {
                        JSONArray array2 = array.getJSONArray(i);
                        for (int j = 0; j < array2.length(); j++) {
                            JSONObject object2 = array2.getJSONObject(j);
                            String w_time = object2.getString("w_time");
                            String w_key = object2.getString("w_key");
                            String w_hot = object2.getString("w_hot");
                            String w_label = object2.getString("w_label");
                            HotNews news = new HotNews(w_time, w_key, w_hot, w_label);
                            result.add(news);
                        }
                    }
                }
                return result;
            } catch (JSONException e) {
                e.printStackTrace();
            }
            return result;
        }
    }

若大家有其他的数据解析方法,欢迎大家分享,留言哦!

若文章中有错误的地方欢迎大家反馈或者留言,十分感谢!!!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章