Log类型中的方法d(String,String)不适用于参数(String,double)

时间:2014-11-02 04:40:48

标签: methods double

我正在做一个基于位置的android项目......但是它显示了一些错误

Log类型中的方法d(String,String)不适用于参数(String,double)

来源:

 public void onLocationChanged(Location paramLocation)
          {
            this.lati = Double.valueOf(paramLocation.getLatitude());
            this.longi = Double.valueOf(paramLocation.getLongitude());
            if (this.c.moveToFirst()) {
              do
              {
                double d1 = this.longi.doubleValue() - Double.parseDouble(this.c.getString(3));
                double d2 = 1000.0D * (1.609344D * (1.1515D * (60.0D * rad2deg(Math.acos(Math.sin(deg2rad(this.lati.doubleValue())) * Math.sin(deg2rad(Double.parseDouble(this.c.getString(2)))) + Math.cos(deg2rad(this.lati.doubleValue())) * Math.cos(deg2rad(Double.parseDouble(this.c.getString(2)))) * Math.cos(deg2rad(d1)))))));
                if ((d2 >= 0.0D) && (d2 <= 11.0D)) {
                  profilematching(this.c.getString(1));
                }
                //Log.d("distance", d2);//error in this line (.d)
              } while (this.c.moveToNext());
            }
          }

1 个答案:

答案 0 :(得分:0)

Log.d()似乎需要2个字符串作为参数,但是你提供了一个字符串和一个double,所以Java抱怨。

您需要先将d2转换为字符串。

尝试使用String.valueOf(d2)作为参数