我正在尝试创建一个介于0和1之间的小数,因此我创建一个介于0和10000之间的Int,然后将其除以10000(Int)以获得小数。
AtBatResult = Int(arc4random_uniform(UInt32(10000)))
这行代码给了我很好的数字。
AtBatResult = AtBatResult / Int(10000)
但是当我运行这行代码时,无论怎样,数字都变为0。这里发生了什么?提前谢谢!
答案 0 :(得分:2)
您已宣布atBatResult
为Int
。您无法为其指定小数值。你正在进行整数除法。
你需要一个Double
变量,你需要做十进制除法。
以这种方式:
let atBatResult = Int(arc4random_uniform(UInt32(10000)))
let finalResult = Double(atBatResult) / 10000
或者你可以这样做:
let atBatResult = Double(arc4random_uniform(UInt32(10000))) / 10000
这会使atBatResult
成为Double
而不是Int
。
FYI - 使用小写字母启动方法和变量名称是标准命名约定。类名以大写字母开头。