处理嵌套的整个类型名称 类
Handle Whole Type Name For Nested Classes
我使用一些嵌套的 类,例如 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();
}
它对我不起作用。
在这里,我想知道两件事。
- 我可以解决这个问题吗?
- 我可以在 java 中描述一条类似
Class<List<String>>
的路径吗?
根据@Holger的评论,我是这样解决的:
public static <T> Set<T> fromJsonToSet(Class<T> resultClass)
{
Type type = TypeToken.getParameterized(Set.class, resultClass).getType();
...
}
我使用一些嵌套的 类,例如 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();
}
它对我不起作用。
在这里,我想知道两件事。
- 我可以解决这个问题吗?
- 我可以在 java 中描述一条类似
Class<List<String>>
的路径吗?
根据@Holger的评论,我是这样解决的:
public static <T> Set<T> fromJsonToSet(Class<T> resultClass)
{
Type type = TypeToken.getParameterized(Set.class, resultClass).getType();
...
}