计算两点之间的距离

时间:2015-07-02 06:56:59

标签: java android

我尝试了以下代码。但是它给出了两个错误。我想通过公式行计算两点之间的距离,并在 textView1 中显示结果。我不知道我在代码中哪里犯了错误?

Cal.java

    import android.view.View;
import android.content.Context;
import java.lang.Math;

public class Cal extends View {
Cal(Context context){
    super(context);
}
public double result;
double parameter = ((10-80)^2) + ((15-90)^2);
public void cal(){
    result = Math.sqrt(parameter);
}
}

MainActivity.java

import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;

public class MainActivity extends Activity{
   Cal cal;

    TextView textView;
    public void onCreate(Bundle s){
        super.onCreate(s);
 setContentView(R.id.textView1);
    cal = new Cal(this);
        textView.setText(cal).;
    }
}

错误:

  

Gradle:FAILURE:构建因异常而失败。

     
      
  • 出了什么问题:任务执行失败':Www:compileDebug'。

         
        

    编译失败;有关详细信息,请参阅编译器错误输出。

      
  •   
  • 尝试:使用--stacktrace选项运行以获取堆栈跟踪。使用--info或--debug选项运行以获得更多日志输出。

  •   

  

无法使用Gradle分发执行构建   ' http://services.gradle.org/distributions/gradle-1.6-bin.zip'

2 个答案:

答案 0 :(得分:0)

import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;

public class MainActivity extends Activity{
    Cal cal;
    TextView textView;

    public void onCreate(Bundle s){
    super.onCreate(s);
    setContentView(R.layout.<your layout name>);  // You can not set id of any view here
    cal = new Cal(this);  // This is a object
    cal.cal();
    textView.setText(""+ cal.result);   // set the value instead of view object
    }
}

答案 1 :(得分:0)

使cal()方法返回double值:

import android.view.View;
import android.content.Context;
import java.lang.Math;

    public class Cal extends View {
    Cal(Context context){
        super(context);
    }
    public double result;
    double parameter = ((10-80)^2) + ((15-90)^2);
    public double cal(){
        result = Math.sqrt(parameter);
        return result;
    }
    }

调用cal()方法并显示结果。

    import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;

public class MainActivity extends Activity{
    Cal cal;
    TextView textView;

    public void onCreate(Bundle s){
    super.onCreate(s);
    setContentView(R.layout.<put your layout name here>); 
    cal = new Cal(this);  
    double res = cal.cal();
    textView.setText(""+res);   
    }
}

textview将设置为“ NaN ”,因为您的参数变量不是数字变量。