Random 數據類型生成假隨機數字和方向。
概要
方法
返回一個假隨機整數,均勻分布在 [min, max] 上。
返回一個假隨機數字,均勻分布在 [0, 1] 上。
返回一個假隨機數字,均勻分布在 [min, max] 上。
在原地均勻地擾拌一個表。
返回一個偽隨機方向的單位向量。
返回與原始相同狀態的新隨機對象。
建構子
new
返回新的 Random 對物件。如果您未提供種子參數,Random 使用內部噪音原始碼的種子。
如果你提供一個種子,它應該在 [-9007199254740991, 9007199254740991] 範圍內,而 Random 將會將它回合到最接近的整數。因此,0、0.99 和 math.random() 的種子都會生產相同的生成器。如果您需要生成種子並將其存儲以供稍後使用,請使用 math.random(max) 。
參數
範例程式碼
Generates a pseudorandom seed and uses it to create a new Random generator.
Datatype.Random
local max = 2147483647 -- use a large integer
local seed = math.random(max)
local generator = Random.new(seed)
方法
Shuffle
()
使用 tb 在位置上均勻地曳動陣列部分的 NextInteger 以選擇索引。如果表的 array 部分有任何 nil "洞",Shuffle 將投擲錯誤,因為曳動可能會改變長度。
tb中的哈希部分被忽略。沒有tb的代理方法被呼叫。
混亂被定義為漢堡排列,因此在給定的表大小下,保證 NextInteger 呼叫數量之間的一致性。
參數
返回
()