gpt4 book ai didi

java - 使用 getY() 和 getX() 计算两点之间的距离

转载 作者:行者123 更新时间:2023-11-30 08:18:59 24 4
gpt4 key购买 nike

我正在尝试创建一种方法来计算两个 Point 对象之间的距离:

public class Point {

private double x;
private double y;

public Point (double x, double y) {

this.x = x;
this.y = y;
}

private static void main (String[] args) {
Point p1 = new Point(5.0,6.0);
Point p2 = new Point(2.0,2.0);
double distance = Math.sqrt((p1.getX() - p2.getX()) * (p1.getX() - p2.getX()) +
(p1.getY() - p2.getY()) * (p1.getY() - p2.getY()));
System.out.println(distance);

}

}

当我尝试编译它时,我不断收到错误提示:

Point.java:16: error: cannot find symbol
double distance = Math.sqrt((p1.getX() - p2.getX()) * (p1.getX() - p2.getX()) +
^

最佳答案

问题是您实际上还没有创建 getter 和 setter 方法(特别是 getter 方法)。在 Java 中,getter 和 setter 方法不会自动为您创建;你必须自己明确地创建它们。因此,只需添加以下代码:

    public double getX() {
return x;
}

public void setX(double x) {
this.x = x;
}

public double getY() {
return y;
}

public void setY(double y) {
this.y = y;
}

您也可以只使用 p1.x,但最好使用 getter 和 setter 封装 Point 类的坐标(x 和 y)。

还有...

要使您的 main 方法起作用,需要将其设置为 public,而不是 private

关于java - 使用 getY() 和 getX() 计算两点之间的距离,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27083477/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com