所有
我想将类类型作为变量传入,并使用它来参数化列表。例如,我的方法如下:
public void index(String url, Class clazz) {
Gson gson = new Gson();
Type listType = new TypeToken<List<clazz>>(){}.getType();
gson.fromJson(response.body().toString(), listType);
}
这甚至可能吗?请注意,在这种情况下,我无法使用泛型。
答案 0 :(得分:2)
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);
}