【发布时间】:2019-05-31 06:22:29
【问题描述】:
我正在尝试将 String 转换为 Int。看起来很简单,但出于某种原因,它总是返回nil。
我只是在编写一个简单的扩展来将美元转换为美分:
func dollarsToCents() -> Int {
var temp = self;
temp = temp.replacingOccurrences(of: "$", with: "")
temp = temp.replacingOccurrences(of: ",", with: "")
if let number = Int(temp) {
return number*100
}
return 0
}
我将temp 设置为“$250.89”。 number 始终为零。无论我如何将temp 转换为 Int,它总是为零。有谁知道我做错了什么?
【问题讨论】:
-
使用
NumberFormatter,不要手动解析货币格式的字符串。 -
我更新了我的问题。不知道它对你有什么作用,而不是我。
-
@tentmaking 很可能他们使用整数字符串而不是十进制字符串进行测试。