randomize(不是標準庫的一部分)初始化隨機數生成器,功能初始化偽隨機數發生器,這樣讓應用程式每次使用不同的偽隨機數序列。對隨機數生成器做初始化動作。
rand(標準庫的一部分)功能得到1與n之間的一個偽隨機數,rand(n),引數數值型或表示式,指定要產生的偽隨機數的上界。有效數值在1到32767之間返回的資料型別相同。函式執行成功後返回1與n之間的一個偽隨機數,包括1到n,如果數值n為null,函式也會返回null。
語法上的區別randomize,指定偽隨機數生成器的起始值,不同的起始值生成不同的偽隨機序列。n為0時,把系統時針作為偽隨機數生成器的起始值,可以生成不可重複的偽隨機序列。如果n不為0,可以產生不同的偽隨機值,但是如果起始值相同,生成的偽隨機數序列也相同。n的值在0到32767之間返回integer,基本上很少使用它的返回值。
簡單來說就是,rand通常是低質量的pRNG,不適用需要合理水平的不可預測性的應用,依賴於一個隱藏的全域性資源,導致不是執行緒安全。雖然不是必需的標準。
randomize(不是標準庫的一部分)初始化隨機數生成器,功能初始化偽隨機數發生器,這樣讓應用程式每次使用不同的偽隨機數序列。對隨機數生成器做初始化動作。
rand(標準庫的一部分)功能得到1與n之間的一個偽隨機數,rand(n),引數數值型或表示式,指定要產生的偽隨機數的上界。有效數值在1到32767之間返回的資料型別相同。函式執行成功後返回1與n之間的一個偽隨機數,包括1到n,如果數值n為null,函式也會返回null。
語法上的區別randomize,指定偽隨機數生成器的起始值,不同的起始值生成不同的偽隨機序列。n為0時,把系統時針作為偽隨機數生成器的起始值,可以生成不可重複的偽隨機序列。如果n不為0,可以產生不同的偽隨機值,但是如果起始值相同,生成的偽隨機數序列也相同。n的值在0到32767之間返回integer,基本上很少使用它的返回值。
簡單來說就是,rand通常是低質量的pRNG,不適用需要合理水平的不可預測性的應用,依賴於一個隱藏的全域性資源,導致不是執行緒安全。雖然不是必需的標準。