股墓山庄

专注于AS3,JavaScript 每天一点进步,坚持...
  博客园  :: 首页  :: 新随笔  :: 联系 :: 管理

as3 产生不重复的随机数

Posted on 2012-02-10 14:56  股墓山庄庄主  阅读(2092)  评论(0编辑  收藏  举报

比如在100个数中,产生5个不重复的随机数。经常会碰到的一种应用。

var arr:Array=[];
var i:int;
while(arr.length<5){
i=Math.random()*100;
if(arr.indexOf(i)==-1)arr.push(i);
}
trace(arr);

 2.

function RadomNumber(Total:int,Current:int) {
	var CurrentKuArray:Array = [];

	var shu = [];
	for (var i=0; i<Total; i++) {
		shu.push(i);
	}
	for (i=0; i<Current; i++) {
		var k = Math.floor(Math.random() * shu.length);//从数组shu中随机选一个元素(第k个)
		CurrentKuArray[i] = shu[k];//把数组shu中选出的元素的值赋给数组myArry第i个元素;
		shu.splice(k, 1);
	}

	trace("生成的序号:"+CurrentKuArray);
}
RadomNumber(100,5);//从100个数中随机取不重复的5个数据。