我试图连接两个数组以向数值数组的列添加标签,并且还要在数组的最后一行之后添加总数。我在另一个堆栈溢出线程How can I concatenate two arrays in Java?上找到了一些代码。但是,我得到一个错误Java Array concatenation
异常在线程 “AWT-EventQueue的-0” java.lang.ClassCastException: [Ljava.lang.Object;不能转换为[[Ljava.lang.Object;
这里是我的代码
public void getpdf(double[][] pricelist, ArrayList<Piece> in) {
PDDocument doc = new PDDocument();
PDPage page = new PDPage();
doc.addPage(page);
try {
PDPageContentStream contentStream =
new PDPageContentStream(doc, page);
JTable table=gettable(pricelist,in);
Object[] headercol={"Type","Asc","Ref","Commandes","Prix unitaire","Prix total"};
Object[][] content=getTableData(table);
Object[][] global=(Object[][]) concatenate (headercol,content);
//drawTable(page, contentStream, 700, 75, headercol);
drawTable(page, contentStream, 700, 75, content);
contentStream.close();
doc.save("bill.pdf");
}
catch (IOException ex) {
ex.printStackTrace();
}
}
public <T> T[] concatenate (T[] a, T[][] b) {
int aLen = a.length;
int bLen = b.length;
@SuppressWarnings("unchecked")
T[] c = (T[]) Array.newInstance(a.getClass().getComponentType(), aLen+bLen);
System.arraycopy(a, 0, c, 0, aLen);
System.arraycopy(b, 0, c, aLen, bLen);
return c;
}
你得到的错误是哪一行? –
您正试图在'T [] c' a'T [] [] b',这是两个不兼容的类型 – DamCx