var startDeck:Array=new Array();
for(var cardNum:int=0;cardNum<52;cardNum++)
{
startDeck.push(cardNum);
}
trace("无排列前:"+startDeck)
var replay:Array=new Array();
while(startDeck.length>0)
{
var r:int=Math.random()*startDeck.length;
replay.push(startDeck[r]);
}
for(var cardNum:int=0;cardNum<52;cardNum++)
{
startDeck.push(cardNum);
}
trace("无排列前:"+startDeck)
var replay:Array=new Array();
while(startDeck.length>0)
{
var r:int=Math.random()*startDeck.length;
replay.push(startDeck[r]);
startDeck.splice(r,1);
//
AS3 function splice(startIndex:int, deleteCount:uint, ... values):Array
startIndex:int — 一个整数,它指定数组中开始进行插入或删除的位置处的元素的索引。 您可以用一个负整数来指定相对于数组结尾的位置(例如,-1 是数组的最后一个元素)。 | |
deleteCount:uint — 一个整数,它指定要删除的元素数量。 该数量包括 startIndex 参数中指定的元素。 如果没有为 deleteCount 参数指定值,则该方法将删除从 startIndex 元素到数组中最后一个元素的所有值。 如果该参数的值为 0,则不删除任何元素。 |
trace("洗牌之后"+replay);
无排列前:0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51
洗牌之后34,12,21,30,18,3,16,26,7,41,36,1,22,39,43,8,28,51,42,35,44,50,37,24,27,48,20,6,14,2,40,46,15,23,49,32,19,17,5,31,4,13,47,33,25,45,9,11,10,29,0,38