java - 处理嵌套类的整个类型名称
问题描述
我使用一些嵌套类,如 List、MyObject ...
然后我可以使用以下方法找到它们的类型:
Type type = new com.google.gson.reflect.TypeToken<List<String>>() {}.getType();
但是当我尝试使用泛型类型来处理它时,例如:
public static <T> T findClass(Class<T> resultClass)
{
//E.g. resultClass = String.class; Expect: List<String>
Type type = new com.google.gson.reflect.TypeToken<List<T>>() {}.getType();
}
它对我不起作用。
在这里,我想知道两件事。
- 我可以解决这个问题吗?
- 我可以像
Class<List<String>>
在 java 中那样描述路径吗?
解决方案
根据@ Holger的评论,我刚刚解决了它,如下所示:
public static <T> Set<T> fromJsonToSet(Class<T> resultClass)
{
Type type = TypeToken.getParameterized(Set.class, resultClass).getType();
...
}
推荐阅读
- amazon-ecr - ECR2 推送到 ecr 存储库不起作用
- c - ADC值太高,端口串口读不出来
- c++ - 在折叠表达式中使用后增量是否会产生未排序的行为?
- python - 如何计算 Pandas DataFrame?
- python - 从函数(A)返回变量在函数(B)中不起作用
- python - 如何迭代地将特定数据从文本文件复制到 python 变量
- django - 键错误:'product_id'
- html - 如何为输入检查粗体标签但未禁用(在 CSS 中)?
- r - 使用 downloadHandler() 在 tempdir() 中创建和读取的图像不起作用
- django - 仅将一种产品从 Django 传递给 Stripe 结帐