将 distanceFromLocation 转换为 Int

Convert distanceFromLocation to Int

我确信这个问题有一个明显的解决方案,但我已经尝试了一段时间不同的东西,但我无法弄清楚。基本上我得到了两点之间的距离,我正在尝试将它从 Double 转换为 Int(以删除所有小数点),但是我尝试过的一切都没有奏效。

这是我的代码:

let userLocation = CLLocation(latitude: mapView.userLocation.coordinate.latitude, longitude: mapView.userLocation.coordinate.longitude)
let annotationLocation = CLLocation(latitude: latitudePassed, longitude: longitudePassed)

var distance = CLLocationDistance(annotationLocation.distanceFromLocation(userLocation))

if distance > 1000 {
    distance = distance / 1000
    rideAnnotation.subtitle = "\(distance) kilometer(s)"
} else {
    rideAnnotation.subtitle = "\(distance) meters"
}

我试过先转换为字符串,然后转换为 int,然后使用 toInt() 和其他一些方法转换为 int,但都没有成功。

有人有什么建议吗?

可能我遗漏了什么,但是 let distanceInt = Int(distance) 是否没有完全按照您的要求进行?