我发现两个公式在Swift中生成两个数字之间的随机数。第一个(最常见的)是:
let randomNum = CGFloat((arc4random_uniform(UInt32(upperNum-lowerNum)) )+ CGFloat(UInt32(lowerNum)))` which gives a number as X.0 as a solution (random whole number)
要获得X.xxxxxxxxxxxxxx的完整CGFloat值,可以使用:
let randomNum = CGFloat(arc4random()) / CGFloat(UINT32_MAX) * abs(lowerNum - upperNum) + min(lowerNum, upperNum)
为什么第一个截断为整数?