欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Gson解析TypeToken指定泛型

程序员文章站 2024-03-16 09:01:22
...

今天碰到一组数据解析报错,特此记录………

[
    {
        "downloadPath": "9887b.apk",
        "equip": [
            "00000",
            "dcs",
            "0000"
        ],
        "upgrade": 3,
        "version": "3",
        "versionState": 1
    },
    {
        "downloadPath": "73e9c57.apk",
        "equip": [
            "64fe7ae",
            "dcs",
            "fe5dae397"
        ],
        "upgrade": 2,
        "version": "3",
        "versionState": 2
    }
]

需要用集合去接收,解析的时候总是报错,发现用Gson解析的时候没法确定返回数据的类型。所以用到
TypeToken去指定返回类型。

        List<VersionBean> versionList
        String jsonStr = "返回的json数据";
        Gson gson = new Gson();
        List<Bean> versionList;
        Type type = new TypeToken<ArrayList<Bean>>() {
        }.getType();
        versionList = gson.fromJson(jsonStr , type);

通过指定解析返回的泛型,就OK了。