如何将JSONArray转换为通用List <t>?

时间:2018-01-11 10:27:40

标签: java android json

如何在一种方法中将通用JSONArray转换为多种类型的List?

喜欢:

JSONObject o = new JSONObject("....");
List<String> str = toList(o.optJSONArray("array1"));
List<Integer> mIntegers = toList(o.optJSONArray("array2"));
List<JSONObject> jsonO = toList(o.optJSONArray("array3"));
List<JSONArray> jsonAr = toList(o.optJSONArray("array4"));

1 个答案:

答案 0 :(得分:3)

我解决了我的问题...

我希望它可以帮助更多人

public <T> List<T> toList(JSONArray jsonArray) {
    List<T> list = new ArrayList<>();
    if (jsonArray != null) {
        int len = jsonArray.length();
        for (int i = 0; i < len; i++) {
            list.add((T) jsonArray.opt(i));
        }
    }
    return list;
}