我正在尝试使用 .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 放入 object[] 中,然后再将其吐入数组中,但为什么转换不起作用以及如何解决这个问题?
最佳答案
dataStuff[] data = recurseFragments.toArray(new datastuff[0]);
关于java - 将 LinkedBlockingQueue<> 中的数据放入非对象类型的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16112034/