Java 获取泛型数组类类型的简单方法?

Java 获取泛型数组类类型的简单方法?,java,Java,我有一个小代码片段,可以简化JSON数组的解析。我最初的想法如下(伪Java): public T[]parseAsArray(字符串内容,类值类型){ return objectMapper.readValue(content,T[].class);//不起作用,因为不能直接转到T[].class } 于是我就摆弄着代码。还有一些。还有一些 最终,我遇到了下面的混乱,这确实有效,但需要我创建一个新的数组实例,这样我就可以获取它的数组类类型,更不用说所有的转换了 public <T&

我有一个小代码片段,可以简化JSON数组的解析。我最初的想法如下(伪Java):

public T[]parseAsArray(字符串内容,类值类型){
return objectMapper.readValue(content,T[].class);//不起作用,因为不能直接转到T[].class
}
于是我就摆弄着代码。还有一些。还有一些

最终,我遇到了下面的混乱,这确实有效,但需要我创建一个新的数组实例,这样我就可以获取它的数组类类型,更不用说所有的转换了

  public <T> T[] parseAsArray(String content, Class<T> valueType) {
    Class<T[]> tArrClass = (Class<T[]>) Array.newInstance(valueType, 0).getClass();
    return (T[]) objectMapper.readValue(content, tArrClass);
  }
public T[]parseAsArray(字符串内容,类值类型){
类tArrClass=(类)Array.newInstance(valueType,0.getClass();
return(T[])objectMapper.readValue(content,tArrClass);
}

难道没有更简单的方法吗?我真正想做的是,如何从
T
T[]
再到
T[].class

我想你可以使用TypeToken(或类似的东西)来指定结果是List。我发现它是新的TypeReference(),不知道如何处理数组。,这里有一些字符串->类hax通过
?e、 g.
parseAsArray(someContent,Integer[].class)
class arrayClass=(class)class.forName(“[L”+classwhicharayisdefined.getName()+”;”;”);
看起来更混乱,不是我想的那样。。。
  public <T> T[] parseAsArray(String content, Class<T> valueType) {
    Class<T[]> tArrClass = (Class<T[]>) Array.newInstance(valueType, 0).getClass();
    return (T[]) objectMapper.readValue(content, tArrClass);
  }