gpt4 book ai didi

java - 当给定类型是数组时如何用给定类型实例化泛型类

转载 作者:行者123 更新时间:2023-11-30 05:23:00 25 4
gpt4 key购买 nike

假设我有这些类(class):

class B<T> {}

class A<T> {

}

实例化A:

A<Float[]> a = new A<>();

在 A 的构造函数中,我想用 T 的类型初始化 B 类,但不是数组

B<Float> b = new B<>();

最佳答案

在不了解更多细节的情况下,我不能 100% 确定这可行,但是:

将 A 的泛型类型参数更改为 Float,而不是 Float[]。然后,在 A 的接受/返回 T 的方法上,将它们更改为指定 T[]

如果这对您不起作用,您的替代方案是:* 使用反射(有点毫无意义,因为泛型类型强制仅在 Java 中进行编译时)* 使用兼容的父类(super class)和转换(语法相当令人讨厌,编译器对你几乎没有帮助)* 使用普通的、非参数化的类型(语法很好,但编译器仍然没有帮助)

如果您编辑问题以包含更多详细信息,我很乐意对其进行编辑以提供更具体的指导。

关于java - 当给定类型是数组时如何用给定类型实例化泛型类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59214326/

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