我已经读过,我不应该将价格视为double
个数字,并且我应该将它们存储为两个整数。
例如,如果我在246.464
中输入UITextField
类型的输入,我应该如何将其设为两个整数?
答案 0 :(得分:5)
忘记两个整数,将其存储为NSDecimalNumber。这是专门为该任务创建的类。
与float
或double
不同,NSDecimalNumber
使用十进制算术,因此在十进制到二进制之间进行转换时,精度不会有任何损失,反之亦然。
let text = "246.464" // textField.text
let number = NSDecimalNumber(string: text)