java计算两个经纬度之间的直线距离
时间: 2023-10-14 14:11:47 浏览: 126
计算两个经纬度之间的距离Java
可以使用Haversine公式来计算。以下是Java代码示例:
```
public static final double R = 6371; // 地球半径
public static double distance(double lat1, double lng1, double lat2, double lng2) {
double radLat1 = Math.toRadians(lat1);
double radLat2 = Math.toRadians(lat2);
double a = radLat1 - radLat2;
double b = Math.toRadians(lng1) - Math.toRadians(lng2);
double s = 2 * Math.asin(Math.sqrt(Math.pow(Math.sin(a / 2), 2) + Math.cos(radLat1) * Math.cos(radLat2) * Math.pow(Math.sin(b / 2), 2)));
s = s * R;
return s;
}
```
其中,lat1、lng1和lat2、lng2分别表示两个经纬度的纬度和经度,函数返回值为两点之间的距离(单位:公里)。
阅读全文