我收到一个我无法理解的错误。 我用这种方式在 Java 中定义了 Couple 类:
public class Couple<T1, T2>{
private T1 t1;
private T2 t2;
public Couple(T1 t1, T2 t2) {
this.t1 = t1;
this.t2 = t2;
}
public Couple() {
this.t1 = null;
this.t2 = null;
}
public T1 getFirst(){return t1;}
public T2 getSecond(){return t2;}
}
在另一个类中,我尝试以这种方式定义一个数组:
Couple<byte[], byte[]>[] res = new Couple<byte[], byte[]>[10];
但是 Eclipse 告诉我错误 "Cannot create a generic array of Couple<byte[], byte[]> "
.
好吧,我不明白的是我提到我想要几个字节[],所以在这一点上没有通用性,我错了吗?
最佳答案
Java 泛型没有具体化,这意味着“实现”本身不是类。不能创建泛型数组这一事实是该语言的固有限制。
我建议您使用列表而不是数组。
关于java - 无法在 Java 中创建...的通用数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28253196/