2012-12-12 17 views
0

我试图创建一个通用数组,但我正在使用标题的错误。无法在Java中创建通用数组

ByteConverter<Product> byteconverter = new ByteConverter<Product>(); 

//into an inner class I have to declare a final field 
final ByteConverter<Product>[] byteconverter2 = {byteconverter}; 

所以,我在Stackoverflow搜索了一个可能的解决方案。我发现这里类似的东西:Cannot create an array of LinkedLists in Java...?,所以我canged我的代码如下:

final ByteConverter<Product>[] byteconverter2 = {(ByteConverter<Product>[])byteconverter}; 

但我还是采取了同样的错误。我无法理解为什么......请帮忙吗?

+2

你得到什么错误限制? –

+1

请阅读http://stackoverflow.com/questions/529085/java-how-to-generic-array-creation。你应该找到你的答案。 – GGrec

+0

@Rohit Jain:无法创建ByteConverter的通用数组

回答

2
final ByteConverter<Product>[] byteconverter2 = 
    new ByteConverter[] 
    { 
     byteconverter 
    }; 

这个效果很好

+0

在声明时初始化数组时,您不需要在RHS上输入类型。 –

+0

,仅适用于java 7 –