使用泛型问题(待解决)

写了如下方法:

    public static <T> List<T> parserJson(String json) {//todo wj
        Gson gson = new Gson();
        Type collectionType = new TypeToken<Collection<T>>() {
        }.getType();
        Collection<T> enums = gson.fromJson(json, collectionType);
        Iterator<T> iterator = enums.iterator();
        List<T> pageItems = CommUtils.copyIterator(iterator);
        return pageItems;
    }

通过直接调用的时候能够正常调用,获取到List集合:

List<FaceCheckResultItem> objects = JsonParser.parserJson(response);

但如果要获取其内部对象的时候,就会保存转换异常:

objects.get(1).getInfo()


ClassCastException: java.util.HashMap cannot be cast to xxxxxx(JavaBean对象)

你可能感兴趣的:(使用泛型问题(待解决))