You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Xcode 14的Swift环境中如何正确将String转换为Double?

Swift中String转Double的正确方法

基础转换方式

最直接的方式是使用Double的初始化器,配合可选绑定处理转换失败的情况:

let targetString = "3.1415"
if let convertedDouble = Double(targetString) {
    print(convertedDouble) // 输出 3.1415
} else {
    print("该字符串无法转换为Double类型")
}

处理本地化格式的字符串

如果字符串包含本地化格式(比如千位分隔符、不同的小数点符号),需要用NumberFormatter适配:

let formatter = NumberFormatter()
formatter.locale = Locale(identifier: "zh_CN") // 根据实际使用的区域设置调整,如"en_US"
formatter.numberStyle = .decimal

// 示例:带千位分隔符的字符串
let localizedStr = "1,234.56"
if let number = formatter.number(from: localizedStr), let doubleVal = number as? Double {
    print(doubleVal) // 输出 1234.56
} else {
    print("本地化格式字符串转换失败")
}

转换失败的常见排查点

  • 字符串包含非数字字符(如字母、空格、特殊符号)
  • 字符串的数字格式与当前系统Locale不匹配(比如用逗号作为小数点,但系统默认用点)
  • 字符串为空或仅包含空白字符

内容的提问来源于stack exchange,提问作者RIPSM S

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 05:45:49