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());
}
}
答案 0 :(得分:0)
Log.d()似乎需要2个字符串作为参数,但是你提供了一个字符串和一个double,所以Java抱怨。
您需要先将d2转换为字符串。
尝试使用String.valueOf(d2)作为参数