如何使用AS3在Flash CS5中生成隨機數字,我寧願儘可能簡單。AS3 - 如何生成隨機數字?
我試圖給我一個錯誤:
day_gross.addEventListener(MouseEvent.CLICK, randomNumber);
function randomNumber(event:MouseEvent):void{
var randint:Number = Math.random();
trace(randint);
}
如何使用AS3在Flash CS5中生成隨機數字,我寧願儘可能簡單。AS3 - 如何生成隨機數字?
我試圖給我一個錯誤:
day_gross.addEventListener(MouseEvent.CLICK, randomNumber);
function randomNumber(event:MouseEvent):void{
var randint:Number = Math.random();
trace(randint);
}
您可以使用Math.random()
產生僞隨機數。
如果是加密的目的產生的數字,但是,你應該使用flash.crypto.generateRandomBytes()
(要求FP11)
我試過在這個函數中..看到上面的答案更新了。 – 2011-03-27 17:25:48
-1。沒有幫助。查看Mark Knol的回答 – 2014-03-19 12:12:48
@TechnikEmpire我的回答沒有幫助?這個問題不需要隨機的整數,兩個答案都使用'Math.rand()'? – 2014-03-19 21:06:45
Math.random()
返回0-1之間的隨機數。
以下代碼創建和跡線和0之間的往返數UINT的最大值:
var randomUint:uint = uint(Math.random() * uint.MAX_VALUE);
trace(randomUint);
該下一個代碼的例子定義並記錄的最小和INT的最大值之間的圓形數目(與負數太):
var randomInt:int = int.MIN_VALUE + int(Math.random() * Number(int.MAX_VALUE + int.MIN_VALUE));
trace(randomInt);
private function randomIntBetween(min:int, max:int):int {
return Math.round(Math.random() * (max - min) + min);
}
警告!此功能會產生不均勻的分佈。下面的Monte Carlo模擬顯示'邊緣'數字大約有一半'內部'數字... 'var a = [0,0,0,0,0,0,0,0]; (var i = 0; i <100000; i ++){ a [this.randomIntBetween(2,6)] ++;對於(var j = 0; j
你是對的@Sean ,一個解決方案是使用'Math.floor'並通過加上'1'來補償最小值,如下所示:'Math.floor(Math.random()*(max - min + 1)+ min);' – marlonp33 2013-11-07 15:59:38
得到它的工作最簡單的方法是這樣的。當你點擊一個按鈕時,它會生成一個隨機數。它是自我解釋性的
protected function button1_clickHandler(event:MouseEvent):void
{
var numbers:Array = new Array(49);
for (var i:int = 0; i < numbers.length; i++)
{
numbers[i]=i;
numbers[i] =[Math.round(Math.random()*i)];
resulttxt.text = numbers[i];
}
}
<s:Button top="342" label="Generate" click="button1_clickHandler(event)" horizontalCenter="0"/>
<s:TextInput id="resulttxt" left="10" top="65" width="250"/>
這個工作適合我。試試吧
你收到了什麼錯誤? – 2011-03-27 17:26:30
變量爲空1009.你看到這段代碼有什麼問題嗎? – 2011-03-27 17:31:39
@Noah - 'day_gross'可能爲空。確保它是在調用addEventListener之前創建的。如果您正在使用Flex,則可能需要在MXML的「FlexEvent.CREATION_COMPLETE」事件的事件偵聽器中執行此代碼。 – 2011-03-27 17:34:31