Swift - 用逗号分隔符加倍的字符串
问题描述:
我目前有一个像这样的字符串:或"4,25"
,我需要将它转换为Double
,但我该怎么做? 我是否首先将,
替换为.
?Swift - 用逗号分隔符加倍的字符串
我看过NSNumberFormatter
,但是每个字符串都返回nil
。
let formatter = NSNumberFormatter()
formatter.minimumFractionDigits = 2
formatter.maximumFractionDigits = 2
let grade = formatter.numberFromString(grade["Cijfer"].stringValue)
print(grade)
我该用什么?
答
使用decimalSeparator
:
let formatter = NSNumberFormatter()
formatter.decimalSeparator = ","
let grade = formatter.numberFromString("2,3")
if let doubleGrade = grade?.doubleValue {
print(doubleGrade)
} else {
print("not parseable")
}
打印
2.3
答
'纯' 雨燕(不基金会)
let str = "9,8"
let sstr = str.characters.split(",").joinWithSeparator(["."])
if let d = Double(String(sstr)) {
print(d) // 9.8
}
,然后我可以投的NSNumb呃到双? – jbehrens94
@ jbehrens94我还包含一个代码片断来解释这一点。 – luk2302
我也会得到类似'9.800000000000001'的回报? – jbehrens94