问答详情
源自:7-1 简易扑克牌游戏

洗牌要怎么做啊

洗牌怎么做啊是不是压根就不用洗牌啊

提问者:jetbbb 2016-01-20 17:02

个回答

  • 凯凯凯凯
    2016-04-05 12:09:27

    	public static void shuffle() {
    		System.out.println("-----------洗牌----------");
    		Random r=new Random();
    		int a = 0;
    		for (int i = 0; i < 52; i++) {
    			do {
    				 a=r.nextInt(52);
    			//*** poker1 为之前先建立好的按花色排序的新扑克牌		
    			} while (poker2.contains(poker1.get(a)));
    					
    			poker2.add(poker1.get(a));
    		}
    		System.out.println("-----------洗牌结束----------");
    		int i=52;			//遍历洗牌结果
    		for (Poker poker : poker2) {
    			i--;			
    			System.out.print(poker+"\t");
    			if(i%13==0){
    				System.out.println();
    			}
    		}
    		
    /**
    *************创建扑克牌**********
    方块2	方块3	方块4	方块5	方块6	方块7	方块8	方块9	方块10	方块J	方块Q	方块K	方块A	
    梅花2	梅花3	梅花4	梅花5	梅花6	梅花7	梅花8	梅花9	梅花10	梅花J	梅花Q	梅花K	梅花A	
    红桃2	红桃3	红桃4	红桃5	红桃6	红桃7	红桃8	红桃9	红桃10	红桃J	红桃Q	红桃K	红桃A	
    黑桃2	黑桃3	黑桃4	黑桃5	黑桃6	黑桃7	黑桃8	黑桃9	黑桃10	黑桃J	黑桃Q	黑桃K	黑桃A	
    -----------洗牌----------
    -----------洗牌结束----------
    黑桃8	红桃2	方块8	红桃10	方块6	方块5	黑桃4	方块4	黑桃2	方块2	黑桃7	方块10	方块9	
    梅花Q	梅花K	方块7	方块Q	梅花J	红桃5	方块K	黑桃10	红桃Q	黑桃A	红桃4	黑桃3	红桃A	
    梅花A	方块3	黑桃K	红桃3	黑桃5	梅花7	梅花9	黑桃9	梅花5	红桃7	梅花8	梅花6	红桃J	
    红桃K	梅花4	梅花10	方块A	红桃8	梅花3	梅花2	黑桃J	红桃6	黑桃Q	红桃9	黑桃6	方块J
    */


  • 猛禽斩侧卫
    2016-01-21 08:45:36

    你还可以 先从list集合中元素添加到set集合    再从set集合中添加到一个新建的list集合中,就变相的实现了洗牌。。。。。(好贱啊这方法)

  • 欣烁菲阳
    2016-01-20 19:15:47

    洗牌-----用Collections.shuffle函数-----随机打乱原来的顺序