Java斗地主案例

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java斗地主案例相关的知识,希望对你有一定的参考价值。

 斗地主案例
            按照斗地主的规则,完成洗牌发牌的动作。
            具体规则:
                     使用54张牌打乱顺序,三个玩家参与游戏,三人交替摸牌,每人17张牌,
                     最后三张留作底牌。每张牌由花色数字两部分组成,最后当纸牌全部发完
                     之后,查看三个玩家手中的牌和底牌内容。
     要求使用ArrayList类来实现以上程序开发。   

代码:

    public static void main(String[] args) {
        //创建颜色集合
        ArrayList<String> colour = new ArrayList<>();
        colour.add("?");
        colour.add("?");
        colour.add("?");
        colour.add("?");
        //创建数字集合
        ArrayList<String> number = new ArrayList<>();
        number.add("A");
        for (int i = 2; i <= 10; i++) {
            number.add("" + i);
        }
        number.add("J");
        number.add("Q");
        number.add("K");

        //创建卡牌集合
        ArrayList<String> Cards = new ArrayList<>();
        for (int i = 0; i < number.size(); i++) {
            for (int j = 0; j < colour.size(); j++) {
                //          获取数字        获取颜色
                Cards.add(number.get(i) + colour.get(j));//循环添加到卡牌集合
            }
        }
        Cards.add("大王");
        Cards.add("小王");

        //洗牌
        Collections.shuffle(Cards);

        System.out.println("洗牌之后");
        for (String card : Cards) {
            System.out.print(" " + card);
        }
        System.out.println();
        //int num = (int) (Math.random() * Cards.size());

        ArrayList<String> plear1 = new ArrayList<>();//玩家1
        ArrayList<String> plear2 = new ArrayList<>();//玩家2
        ArrayList<String> plear3 = new ArrayList<>();//玩家3
        ArrayList<String> killer = new ArrayList<>();//底牌
        for (int i = 0; i < 17; i++) {
            plear1.add(Cards.get(i * 3));//玩家1去牌
            plear2.add(Cards.get(3 * i + 1));//玩家2去牌
            plear3.add(Cards.get(3 * i + 2));//玩家3去牌
        }
        for (int i = 51; i < 54; i++) {
            killer.add(Cards.get(i));//拿底牌
        }

        System.out.println("玩家一");
        System.out.println(plear1.toString());
        System.out.println("玩家二");
        System.out.println(plear2.toString());
        System.out.println("玩家三");
        System.out.println(plear3.toString());
        System.out.println("底牌");
        System.out.println(killer.toString());
}

以上是关于Java斗地主案例的主要内容,如果未能解决你的问题,请参考以下文章

使用Java实现简单的斗地主案例

Java斗地主案例

java代码--斗地主

斗地主之洗牌发牌----Java篇

斗地主游戏的案例开发

练习---斗地主案例分析和代码实现