ios - swift string轉int




swift:將字符串轉換為double的問題 (2)

你可以使用這個代碼可能是有用的。

print(str.doubleValue)

這是Xcode 7.3.1操作系統中的一個簡單代碼:

var str = "8.7" print(Double(str))

輸出是驚喜: Optional(8.6999999999999993)

另外, Float(str)給出: 8.69999981

任何想法或這個傢伙的原因? 任何提及這個將不勝感激。

另外,我應該如何將“8.7”​​轉換為雙倍(或浮動)8.7?

編輯

在迅速:

(str為NSString).doubleValue返回8.7

現在,這是好的。 但是我的問題仍然沒有得到完整的答案。 我們已經找到了一個選擇,但為什麼我們不能依靠雙(“8.7”​​)。 請對此進行更深入的了解。

編輯2

(NSString為“6.9”).doubleValue //打印6.9000000000000004

所以,這個問題再次打開。


我會用:

let doubleValue = NSNumberFormatter().numberFromString(str)?.doubleValue




cocoa-touch