0

http://pastebin.com/gDMy7fPw

上面,是我的形状创建者代码,这是一部分但独立。

我收到一个错误

g2d.drawLine(p1.getX(), p1.getY(), p2.getX(), p2.getY());

它基本上说它不能在原始类型 double 上调用 getX()不能在原始类型 double 上调用 getY()

我可以更改除该方法之外的任何代码。有谁知道我怎样才能摆脱这个错误,因为我不知道这意味着什么。

4

2 回答 2

6

p1p2变量的类型是double. 首先要做的是根据你的理解工作编译器消息说明了您应该需要的一切:

无法在原始类型 double 上调用 getX()

这是绝对正确的- 你不能打电话getX()double所以接下来你应该弄清楚你为什么要尝试跟注getX()。你不应该调用它,还是你的变量类型错误?

怀疑不是这些变量:

private double x1;
private double y1;
private double x2;
private double y2;
private double p1;
private double p2;

你实际上想要:

private Point p1;
private Point p2;

或者,完全摆脱p1p2改变你的电话:

g2d.drawLine(x1, y1, x2, y2);
于 2012-04-23T14:48:18.173 回答
0

可能您想使用:

g2d.drawLine(x1, y1, x2, y2);

于 2012-04-23T14:50:32.523 回答