用泛型成员变量"新建"结构/类的数组的正确方法是使用Java中的泛型数组创建方式。在Java中,由于泛型的类型擦除机制,直接创建泛型数组是不被允许的,但可以通过以下步骤来实现:
下面是一个示例代码:
public class GenericArray<T> {
private T[] array;
public GenericArray(int size) {
// 创建Object类型的数组
array = (T[]) new Object[size];
}
public void set(int index, T value) {
array[index] = value;
}
public T get(int index) {
return array[index];
}
public static void main(String[] args) {
GenericArray<String> genericArray = new GenericArray<>(5);
genericArray.set(0, "Hello");
genericArray.set(1, "World");
String value = genericArray.get(0);
System.out.println(value);
}
}
在上述示例中,我们创建了一个泛型数组array
,并通过set
方法设置元素值,通过get
方法获取元素值。在创建数组时,使用了类型转换(T[]) new Object[size]
,以便在编译时通过类型检查。
需要注意的是,由于类型擦除机制的限制,无法直接获取泛型数组的实际类型参数。因此,在使用数组元素时,需要进行类型转换以保证类型安全。
推荐的腾讯云相关产品:腾讯云云服务器(CVM)和腾讯云对象存储(COS)。
领取专属 10元无门槛券
手把手带您无忧上云