int [] []有什么问题

时间:2010-11-18 02:54:35

标签: java arraylist

您好 我写了一个代码,我将只提出一个问题的一部分。 我有arrayList<Point>,其大小为4。我已将此列表的3元素传递给方法,但使用System.out.println我得3 y而不是1 y !!出了什么问题。请帮助我。谢谢

CODE:

    public int determinal(Object get, Object get0, Object get1) {
    Point point = (Point) get;
    Point point1 = (Point) get0;
    Point point2 = (Point) get1;
    int[][] data = new int[3][2];
    data[0][0] = point.getX();
    data[0][1] = point.getY();
    data[1][0] = point1.getX();
    data[1][1] = point1.getY();
    data[2][0] = point2.getX();
    data[2][1] = point2.getY();
    System.out.println(data[1][1]);
    return ((data[0][0] - data[2][0]) * (data[2][1] - data[2][1]) * (data[1][0] - 
data[2][1]) * (data[0][1] - data[2][1]));
    }

输出:

X :225  Y: 86
X :92  Y: 164
X :238  Y: 154
86
164
154

我更喜欢打印164但它会打印所有y。 另外我还有另一个System.out.println打印我所有三点的X和Y(这个方法没有在上面提到)

2 个答案:

答案 0 :(得分:1)

你认为问题是什么并不是很清楚,但我认为你只是因为你的变量名称不一致而感到困惑。

例如,如果我删除与System.out.println调用无关的代码:

public int determinal(Object get, Object get0, Object get1) {
    Point point1 = (Point) get0;
    int[][] data = new int[3][2];
    data[1][1] = point1.getY();
    System.out.println(data[1][1]);
    }

然后进一步减少它:

public int determinal(Object get, Object get0, Object get1) {
    System.out.println(((Point) get0).getY());
    }
你能看到现在发生了什么吗?

答案 1 :(得分:0)

我觉得你的调用方法有问题,你可以发布调用方法的样本吗?

或者确保你的调用方法中有一些循环控制,这就是造成这种情况的原因。

-Saligh