gpt4 book ai didi

java - 泛型类到相同泛型类型的泛型数组

转载 作者:塔克拉玛干 更新时间:2023-11-02 07:56:46 24 4
gpt4 key购买 nike

我有一个像这样的方法签名

public <T extends SomeClass> T[] findAll(Class<T> oClass, String condition)

但我不确定如何创建 T[]Class<T> 输入.我试过使用 Collection<T>但我不能投 (T[]) collection.toArray()Array.newInstance(Class<?>, int)已经要求一个数组类(即 T[] ),这是没有用的和多余的。

另外,很明显,new T[n]不起作用。

我认为这很简单,但我现在对解决方案感到 NumPy :)

谢谢。

最佳答案

newInstance 不要求数组类,它要求组件类型。它可以正常工作,尽管存在未经检查的强制转换和通用数组的常见问题。

T[]  myArr = (T[]) Array.newInstance(oClass, length);

但为什么要混合数组和泛型呢?它只会导致头痛。使用 Collections API 中的内容,例如 List

关于java - 泛型类到相同泛型类型的泛型数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5626867/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com