AS3 - 如何生成随机数?

时间:2011-03-27 17:22:31

标签: actionscript-3

如何使用AS3在Flash CS5中生成随机数,我希望它尽可能简单。

我的尝试给了我一个错误:

day_gross.addEventListener(MouseEvent.CLICK, randomNumber);
function randomNumber(event:MouseEvent):void{
    var randint:Number = Math.random();
    trace(randint);
    }

4 个答案:

答案 0 :(得分:9)

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);

答案 1 :(得分:5)

您可以使用Math.random()生成伪随机数。

但是,如果要为加密目的生成数字,则应使用flash.crypto.generateRandomBytes()(需要FP11)

答案 2 :(得分:2)

private function randomIntBetween(min:int, max:int):int {
    return Math.round(Math.random() * (max - min) + min);
}

答案 3 :(得分:0)

让它发挥作用的最简单方法就是这样。当您单击按钮时,它会生成一个随机数。这是自我解释

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"/>

这项工作对我而言。尝试一下