根据提供的两个经纬度计算距离(米)

java 复制代码
public static final double RAD = Math.PI / 180;
public static final double EARTH_RADIUS = 6378137;
public static double getDistance(double lng1, double lat1, double lng2, double lat2) {
        double radLat1 = lat1 * RAD;
        double radLat2 = lat2 * RAD;
        double a = radLat1 - radLat2;
        double b = (lng1 - lng2) * RAD;
        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 * EARTH_RADIUS;
        s = Math.round(s * 10000) / 10000;
        return Math.abs(s);
}
相关推荐
时空系几秒前
第6篇:数据容器——管理大量数据 Rust中文编程
开发语言·后端·rust
eLIN TECE7 分钟前
Go基础之环境搭建
开发语言·后端·golang
念何架构之路8 分钟前
Go反射应用技巧
开发语言·后端·golang
shjita10 分钟前
java根据键值对中值的大小进行排序的手法。
java·开发语言·servlet
Rabitebla29 分钟前
vector 的骨架:三根指针、模板陷阱与迭代器失效的第一现场
开发语言·数据结构·c++·算法
时空系29 分钟前
第7篇:功能——打造你的工具箱 Rust中文编程
开发语言·网络·rust
薪火铺子29 分钟前
Spring Security 6.x 实战指南
java·后端·spring
csbysj202038 分钟前
CSS !important:深度解析与最佳实践
开发语言
善恶怪客41 分钟前
Java-数据类型
java
初心未改HD43 分钟前
Go语言测试与Benchmark:测试驱动开发的实践指南
开发语言·golang