斗地主(1)"/>
Java小小斗地主(1)
空闲时间来一下斗地主🙄
目录
空闲时间来一下斗地主🙄
1.准备牌
2.洗牌
3.发牌
4.看牌
1.准备牌
创建一个Poker集合来存储54张牌
直接将大王和小王用add方法添加进集合中
将花色和数字先分别用两个字符串数组存储,再用for循环添加进集合中
String[] colors = {"♠", "♥", "♣", "♦"};String[] numbers = {"A", "K", "Q", "J", "10", "9", "8", "7", "6", "5", "4", "3", "2"};for (String number : numbers) {for (String color : colors) {poker.add(color + number);}}
效果如下
2.洗牌
用Collections中的方法打乱集合中元素的排序
Collections.shuffle(poker);
每次运行元素排序都不一样,效果如图
3.发牌
斗地主需要三个玩家,可用三个集合来表示三位玩家。
一张一张地发完牌后牌,留下的三张牌用一个集合表示。
ArrayList<String> player01=new ArrayList<>();ArrayList<String> player02=new ArrayList<>();ArrayList<String> player03=new ArrayList<>();ArrayList<String> diPai=new ArrayList<>();
如何分别一张张的将牌发给玩家呢?
一个整数除以三,余数有三种情况
0%3=0 1%3=1 2%3=2 3%3=0
所以我们可以用if语句分别将牌发给玩家
for(int i=0;i<poker.size();i++){String p=poker.get(i);//轮流发牌//当i剩下三张的时候,将这三张牌添加进底牌的集合中if(i>=51){ diPai.add(p);}else if(i%3==1){player01.add(p);}else if(i%3==0){player02.add(p);}else if(i%3==2){player03.add(p);}}
4.看牌
分别输出集合,名字可以自己随便起的,可以自己试一下直接将赌神,赌圣,赌侠给凑齐😹
System.out.println("A:"+player01);System.out.println("B:"+player02);System.out.println("C:"+player03);System.out.println("底牌:"+diPai);
效果如下
更多推荐
Java小小斗地主(1)
发布评论