我正在尝试使用.toArray()从LinkedBlockingQueue复制到dataStuff []数据数组,但出现异常
Exception in thread "main" java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [LdataStuff;
at Main.main(Main.java:30)
用下面的代码
public static BlockingQueue<dataStuff> recurseFragments = new LinkedBlockingQueue<dataStuff>();
public static void main(String args[]) throws IOException
{
dataStuff[] data = (dataStuff[]) recurseFragments.toArray();
}
我知道它在将recurseFragments吐入数组之前将recurseFragments放入了object []中,但是为什么投射不起作用,我该如何解决呢?
最佳答案
dataStuff[] data = recurseFragments.toArray(new datastuff[0]);