2017-12-14 13 views
-5

メソッドを使用してポイントを生成する方法は?私は2点間の距離を計算したい。メソッドを使ってポイントを生成する方法は?

public double getPointA(double x, double y){ 
    return getPointA(x,y); 
} 


public double getPointB(double x, double y){ 
    return getPointB(x,y); 
} 


public double length(double x1, double y1, double x2, double y2){ 
    double x = Math.pow(x2-x1,2); 
    double y = Math.pow(x1-y1,2); 
    double l = Math.sqrt(x+y); 
    return l;   
} 
+0

はここを見て:いくつかの変更が – prsvr

+0

それは今コンパイルPointクラスが必要ですか?距離法を直接使用しています – Jarvis

+0

さて、なぜあなたがした後https://docs.oracle.com/javase/7/docs/api/java/awt/geom/Point2D.html –

答えて

0

あなたの方法はPointないdoubleを返す

  1. です。
  2. 無限に電話してください。これは無限再帰と呼ばれますが、今はそれを心配しないでください。

return new Point2D.Double(x, y)で組み込みのPointクラスを返すようにすることができます。

All Point2D objects already have a distance() method that accepts another Point2D

public double getDistance(double x1, double y1, double x2, double y2) { 
    return getPointA(x1, y1).distance(getPointB(x2, y2)); 
} 
+0

もう一つの選択肢はありますか? "パッケージPoint2Dが存在しません" – Jarvis

+0

'import java.awt.geom.Point2D' ... – MFisherKDX

+0

@Jarvisパッケージではなく、クラスです。代わりに独自のPointクラスを定義していますが、もちろん –

0

Point2D.Doubleという名前のクラスがあります。例えば、

Point2D.Double myPoint = new Point2D.Double(1.5, 2.8); 

のようなものを書くことができます。これらのオブジェクトの2つの間の距離を簡単に見つけることができます。

double distance = myPoint.distance(yourPoint); 
+0

は別の代替手段ですか? 「パッケージPoint2Dは存在しません」コンパイルできないため、 – Jarvis

+0

Point2Dクラスをインポートする必要があります。 –

関連する問題