gpt4 book ai didi

swift - 潜水 arc4random_unifrom 的结果给我 0

转载 作者:行者123 更新时间:2023-11-28 12:18:33 24 4
gpt4 key购买 nike

我试图创建一个介于 0 和 1 之间的小数,因此我创建了一个介于 0 和 10000 之间的 Int,然后将它除以 10000(一个 Int)以获得小数。

AtBatResult = Int(arc4random_uniform(UInt32(10000)))

这行代码给我的数字很好。

AtBatResult = AtBatResult / Int(10000)

然而,当我运行这行代码时,数字无论如何都变为 0。这里发生了什么?提前致谢!

最佳答案

您已将 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

仅供引用 - 以小写字母开头的方法和变量名称是标准命名约定。类名以大写开头。

关于swift - 潜水 arc4random_unifrom 的结果给我 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45604092/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com