计算两经纬度之间的距离

整体流程

下面是实现“java两经纬度之间距离”的整体步骤:

步骤 操作
1 获取两个经纬度坐标
2 将经纬度坐标转换为弧度
3 使用Haversine公式计算距离
4 返回两点之间的距离

代码实现

步骤1:获取经纬度坐标

double lat1 = 39.9042; // 第一个点的纬度
double lon1 = 116.4074; // 第一个点的经度
double lat2 = 31.2304; // 第二个点的纬度
double lon2 = 121.4737; // 第二个点的经度

步骤2:将经纬度坐标转换为弧度

double dLat = Math.toRadians(lat2 - lat1);
double dLon = Math.toRadians(lon2 - lon1);

步骤3:使用Haversine公式计算距离

double a = Math.pow(Math.sin(dLat / 2), 2) + Math.cos(Math.toRadians(lat1)) * Math.cos(Math.toRadians(lat2)) * Math.pow(Math.sin(dLon / 2), 2);
double c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a));
double distance = 6371 * c; // 地球半径为6371公里

步骤4:返回两点之间的距禂

System.out.println("两点之间的距离为:" + distance + "公里");

类图

classDiagram
    class Developer
    class NoviceDeveloper
    Developer <|-- NoviceDeveloper

甘特图

gantt
    title Java两经纬度之间距离计算任务甘特图
    dateFormat  YYYY-MM-DD
    section 整体流程
    获取两个经纬度坐标           :done, 2023-10-01, 1d
    将经纬度坐标转换为弧度       :done, 2023-10-02, 1d
    使用Haversine公式计算距离   :done, 2023-10-03, 2d
    返回两点之间的距离          :done, 2023-10-05, 1d

结尾

通过以上步骤,你已经学会如何使用Java计算两个经纬度之间的距离了。希望这篇文章对你有所帮助,如果有任何疑问,请随时向我提问。继续加油,你会成为一名优秀的开发者的!