猿问

简易扑克牌

有54张牌,存到一个cards数组中去,为了将这些牌设置其值为0~53,要求:用随机算法,将这些牌在数组中的顺序打乱
         int[] cards = new int[54];
            for (int i = 0; i < cards.Length; i++)
            {
                cards[i] = i;
            }
            Random rnd = new Random();
            for (int i = 53; i >= 0; i--)
            {
                int j = rnd.Next(i);
                int temp;
                temp = cards[j];
                cards[j] = cards[i];
                cards[i] = temp;
            }
            //建立三个17张牌的数组
            int[] play1 = new int[17];
            int[] play2 = new int[17];
            int[] play3 = new int[17];
            for(int i=0;i<54;i++)
牌的顺序已打乱了,接下来怎么写呀?头好晕

_JUNZHANG
浏览 1180回答 1
1回答

慕婉清0_郁乱我心

先给你一个思路,    A:创建一个HashMap集合  B:创建一个ArrayList集合  C:创建花色数组和点数数组  D:从0开始往HashMap里面存储编号,并存储对应的牌  同时往ArrayList里面存储编号即可。  E:洗牌(洗的是编号)  F:发牌(发的也是编号,为了保证编号是排序的,就创建TreeSet集合接收)  G:看牌(遍历TreeSet集合,获取编号,到HashMap集合找对应的牌)    
随时随地看视频慕课网APP
我要回答