类型不匹配:无法从double [] []转换为double []

时间:2014-11-29 16:37:03

标签: java arrays

我对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;
    }

}

2 个答案:

答案 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);
    }

}