用集合模拟斗地主的洗牌的发牌

来源:互联网 发布:中南工程咨询设计 知乎 编辑:程序博客网 时间:2024/05/22 09:42
模拟斗地主的洗牌和发牌
1)创建一个牌盒
2)装牌:点数和花色:String类型
3)洗牌
4)发牌
5)看牌
代码
:
import java.util.ArrayList;import java.util.Collections;public class PokerDemo {    public static void main(String[] args) {    //创建一个牌盒(集合)        ArrayList<String> array = new ArrayList<String>();    //装牌        //创建花色数组        String[] colors = {"♠","♥","♣","♦"};        //创建点色数组        String[] numbers = {"A","2","3","4","5","6","7","8","9",                "10","J","Q","K"} ;        //开始装配        for(String color : colors){            for(String number : numbers){                array.add(color.concat(number));            }        }    //添加大小王:        array.add("大王");        array.add("小王");    //洗牌:随机置换        Collections.shuffle(array);        System.out.println(array);    //发牌        ArrayList<String> player1 = new ArrayList<String>();        ArrayList<String> player2 = new ArrayList<String>();        ArrayList<String> player3 = new ArrayList<String>();        ArrayList<String> dipai = new ArrayList<String>();        for(int x= 0; x< array.size();x++){            if(x >= array.size()-3){                dipai.add(array.get(x));            }else if(x%3 == 0){                player1.add(array.get(x));            }else if(x % 3 == 1){                player2.add(array.get(x));            }else if(x % 3 == 2){                player3.add(array.get(x));            }        }        //看牌:        lookPoker("玩家一",player1);        lookPoker("玩家二",player2);        lookPoker("玩家三",player3);        lookPoker("底牌是",dipai);    }    public static void lookPoker(String name,ArrayList<String> array){        System.out.print(name+"的牌是:");        for(String s : array){            System.out.print(s+" ");        }        System.out.println();    }}
结果是
这里写图片描述
阅读全文
0 0