Java:调用类型数组来测试平等

时间:2016-12-02 02:56:30

标签: java arrays class equals

我正在开发一个程序,它首先采用偶数数组的双精度数,然后依次创建第二个(x,y)坐标数组。然后,通过比较数组中每个点的x坐标和y坐标,必须将调用PointArray与参数PointArray进行比较。我在概念上知道我必须对每个数组进行排序并使用indeces和定义的equals方法比较每个点,但是我不知道如何在没有给出的情况下引用调用类类型数组的一个点。一个参数。

private double x;
private double y;

public Point(double x_coord, double y_coord)
{
    x = x_coord;
    y = y_coord;
}

public boolean equals(Point anotherPoint)
{
    if(x == anotherPoint.x && y == anotherPoint.y)
    {
        return true;
    }
    return false;
}
int count;
private Point[] points = new Point[count];

public PointArray(double[] doubleArray)
{
    count = (doubleArray.length) / 2;
    if(doubleArray.length % 2 == 0)
    {
        count = (doubleArray.length) / 2;
        for(int i = 0, j = 0; i < count; i++, j += 2)
        {
            double x = doubleArray[j];
            double y = doubleArray[j + 1];
            points[i] = new Point(x, y);
        }
    }
    else
    {
        System.out.println("Error: The given array must be even.");
    }
}
public boolean equals(PointArray anotherPointArray)
{
    double x = 0;
    double y = 0;
    double xAnother = 0;
    double yAnother = 0;
    Point newPoint = new Point(x, y);
    Point newAnotherPoint = new Point(xAnother, yAnother);
    anotherPointArray.sort();
    anotherPointArray.newPoint;
    for(int i = 0; i < points.length; i++)
    {
        for(int j = 0; i < anotherPointArray.length; j++)
        {
            if(newPoint.equals(newAnotherPoint))
            {
                return true;
            }
        }
    }
    return false;
}

编辑:澄清一下,我的问题是我不知道如何使用PointArray对象设置Point equals方法。

1 个答案:

答案 0 :(得分:1)

在对象上调用方法时:

something.myMethod(argObject);

myMethod内,您可以将something(调用该方法的对象)称为this - 对象。 我希望this tuto比单词更好地证明它。