繁体   English   中英

如何将类类型传递给Gson的方法

[英]How to pass in class type to method for Gson

所有,

我想将类类型作为变量传递,并使用它来参数化列表。 例如,我的方法如下:

public void index(String url, Class clazz) {
    Gson gson = new Gson();
    Type listType = new TypeToken<List<clazz>>(){}.getType();
    gson.fromJson(response.body().toString(), listType);
}

这有可能吗? 请注意,在这种情况下,我不能使用泛型。

Class是原始类型。 将它与在通用方法中定义的类型参数一起使用,并使用该类型参数:

public <T> void index(String url, Class<T> clazz) {
    Gson gson = new Gson();
    Type listType = new TypeToken<List<T>>(){}.getType();
    gson.fromJson(response.body().toString(), listType);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM