Java:如何将Point值传递给折线?

时间:2013-12-21 23:11:08

标签: java arrays oop polyline

所以我有这个Polyline类使用另一个类(Point)来创建折线。

Point只定义一个带有x和y值的点及其名称(点A,点B等)

public class Polyline 

{
private Point []    corner;

public Polyline ()
{
    this.corner = new Point[0];

}

public Polyline (Point [] corner)
{
    this.corner = new Point [cornerlength];
    for (int i = 0; i < corner.length; i++)
        this.corner[i] = new Point (corner[i]);

}

现在我的问题是,我如何赋予这些角落他们的价值观?我创建了一个名为PolylineTest的程序,我想给它一些值并打印出来,但我还没弄清楚如何去做。

我认为它会是这样的:

Polyline [] p1 = new Polyline[0];

但我无法弄清楚如何给它一个价值。

有人能给我一个正确的方向吗?

提前谢谢

(代码目前无法编译)

1 个答案:

答案 0 :(得分:1)

假设您的Point课程类似于:

public class Point {

    public String name;
    public int x;
    public int y;

    public Point(String name, int x, int y) {
        this.name = name;
        this.x = x;
        this.y = y;
    }

    public Point(Point p) {
        this.name = p.name;
        this.x = p.x;
        this.y = p.y;
    }

    public String toString() {
        return name + "[" + x + ", " + y + "]";
    }
}

并将此方法添加到Polyline类:

public String toString() {
    return "Polyline " + Arrays.toString(corner);
}

用法如下:

public class PolylineTest {

    public static void main(String[] args) {
        Point[] points = new Point[] {
                new Point("A", 4, 2),
                new Point("B", 8, 5),
                new Point("C", 1, 7)
        };
        Polyline polyline = new Polyline(points);
        System.out.println(polyline);
    }
}