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;
        }
    }

若大家有其他的數據解析方法,歡迎大家分享,留言哦!

若文章中有錯誤的地方歡迎大家反饋或者留言,十分感謝!!!

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