Swift - 如何将字符串转换为 double

标签 swift

我正在尝试用 swift 语言编写 BMI 程序。 我遇到了这个问题:如何将 String 转换为 Double?

在 Objective-C 中,我可以这样做:

double myDouble = [myString doubleValue];

但是我怎样才能用 Swift 语言实现这一点呢?

最佳答案

Swift 2 更新 有新的可失败初始化器允许您以更惯用和安全的方式执行此操作(正如许多答案所指出的,NSString 的 double 值不是很安全,因为它对于非数字值返回 0。这意味着 doubleValue"foo" | 和 "0" 相同。)

let myDouble = Double(myString)

这会返回一个可选值,因此在类似传入 "foo" 的情况下哪里doubleValue会返回 0,可失败的初始化器将返回 nil 。您可以使用 guard , if-let ,或map处理 Optional<Double>

原帖: 您不需要像接受的答案所建议的那样使用 NSString 构造函数。您可以像这样简单地桥接它:

(swiftString as NSString).doubleValue

关于Swift - 如何将字符串转换为 double ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50950499/

相关文章:

swift - 使用 MVVM 使用 RxSwift 查看初始数据源和过滤

ios - 在 iOS 中向 View 的一侧添加边框时出现问题

iOS:如何为应用程序的所有 ImageView 设置 'accessibilityIgnoresInvertColors' 为真?

arrays - Swift - 如果包含字符串并附加到另一个数组,则在数组中搜索

ios - 如何通过 Alamofire 发送空 JSON?

swift - Sprite Kit UIActivityIndi​​cator 不会停止动画

ios - 如何在 BarCharts IOS 图表中创建多个数据集

ios - 带有 switch 语句的 SwiftUI 动画

ios - 如何快速更改标签的位置

ios - 在 iOS 中使用什么来在预定时间显示消息?