我对Java很新,这个问题刚刚出现,我试着搜索但却无法知道为什么会这样。
public class Cliente{
private int clientID;
private String clientName;
private double clientDebt;
private double[][] clientHistory;
public void registerID(int newID) {
this.clientID = newID;
}
// Here is the issue
public void newInvoice(double[][] invoice) {
this.clientHistory[this.clientHistory.length] = invoice;
}
}
答案 0 :(得分:1)
你做错了:P只需分配
this.clientHistory = invoice;
你的double[][]
是一个矩阵,它是一个数组数组,你试图将一个矩阵放入索引this.clientHistory.length
答案 1 :(得分:1)
您是否尝试跟踪发票数量不断变化的发票清单?如果是这样,您可能想要使用ArrayList。此类允许您添加新发票而不删除旧发票。你的课程看起来像这样:
public class Cliente{
private int clientID;
private String clientName;
private double clientDebt;
private ArrayList<double[]> clientHistory = new ArrayList<double[]>();
public void registerID(int newID) {
this.clientID = newID;
}
// Here is the issue
public void newInvoice(double[] invoice) {
clientHistory.add(invoice);
}
}