java 计算两点之间距离
时间: 2023-09-25 08:15:39 浏览: 69
您好!关于您的问题,可以通过以下方式计算两点之间的距离:
```java
public static double distance(double lat1, double lon1, double lat2, double lon2) {
double earthRadius = 6371; // 地球半径,单位千米
double dLat = Math.toRadians(lat2 - lat1);
double dLon = Math.toRadians(lon2 - lon1);
double a = Math.sin(dLat / 2) * Math.sin(dLat / 2) +
Math.cos(Math.toRadians(lat1)) * Math.cos(Math.toRadians(lat2)) *
Math.sin(dLon / 2) * Math.sin(dLon / 2);
double c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a));
double distance = earthRadius * c;
return distance;
}
```
其中,参数说明如下:
- `lat1`:第一个点的纬度,单位为度;
- `lon1`:第一个点的经度,单位为度;
- `lat2`:第二个点的纬度,单位为度;
- `lon2`:第二个点的经度,单位为度。
函数返回值为两点之间的距离,单位为千米。