上記は、形状クリエーター用の私のコードです。これは一部ですが、独立しています。
エラーが発生します
g2d.drawLine(p1.getX(), p1.getY(), p2.getX(), p2.getY());
これは基本的に、プリミティブ型 double でgetX() を呼び出すことはできず、プリミティブ型 doubleでgetY()を呼び出すことはできません。
そのメソッド以外のコードを変更できます。その意味がわからないので、そのエラーを取り除く方法を知っている人はいますか。
上記は、形状クリエーター用の私のコードです。これは一部ですが、独立しています。
エラーが発生します
g2d.drawLine(p1.getX(), p1.getY(), p2.getX(), p2.getY());
これは基本的に、プリミティブ型 double でgetX() を呼び出すことはできず、プリミティブ型 doubleでgetY()を呼び出すことはできません。
そのメソッド以外のコードを変更できます。その意味がわからないので、そのエラーを取り除く方法を知っている人はいますか。
あなたp1とp2変数のタイプは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;
p1または、 and を完全に取り除き、p2呼び出しを次のように変更します。
g2d.drawLine(x1, y1, x2, y2);
おそらくあなたは使いたいと思っていました:
g2d.drawLine(x1, y1, x2, y2);