仅添加java

时间:2018-03-24 01:32:02

标签: java linked-list add

Empty是一个以getValue()作为方法的类,this.k是一个以Object [] []为类型的矩阵,它的每个字段都可以有树类型的对象:空,中性和其他。 我想在一个链表中插入许多矩阵,只改变一个值

    public LinkedList<Object[][]> increment(int i,int j)
    {
    LinkedList<Object[][]> l=new LinkedList<>();
    Object[][] o;
    for(int a=1;a<10;a++)
    {
        o=this.k;
        ((Empty) o[i][j]).setValue(a);
        l.add(o);
    }
    for(Object[][] oo:l)
    {
        System.out.println(((Empty) oo[i][j]).getValue());
    }
    return l;
    }

输出假设是这样的: 1 2 3 4 5 6 7 8 9 但它只打印最后一个数字: 9 9 9 9 9 9 9 9 9

1 个答案:

答案 0 :(得分:0)

实际上,LinkedList<Object[][]> l中的每个元素都引用了相同的this.k,并且它包含您在上一个中修改的值。请在每次迭代中新建k的对象。