如何用Java编写模拟斗地主发牌的小程序?

2026-05-26 08:421阅读0评论SEO教程
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计500个文字,预计阅读时间需要2分钟。

如何用Java编写模拟斗地主发牌的小程序?

一款经典策略游戏:大小王+4*13。模拟战地主的发行过程:首先,我们需要购买游戏,新购买的卡牌都按顺序排列。由于下一步是洗牌,所以最后才是发行新卡牌。

如何用Java编写模拟斗地主发牌的小程序?

一副扑克有54张牌:大小王+4*13,接下来我们来模拟一下斗地主的发牌过程

首先,我们需要买牌,新买来的牌都是按顺序摆放的,因此下一步是洗牌,最后就是发牌了,不过发牌的时候要注意还要在最后留三张底牌。

主要使用的类有ArrayList:用来存储扑克,Collections用来洗牌。

import java.util.ArrayList; import java.util.Collections; /* * 模拟斗地主发牌 一共54张牌 * 买牌 * 洗牌 * 发牌 * */ public class DouDIZhuDemo { public static void main(String[] args) { // 花色 数组 String[] arr = { "黑桃", "红桃", "梅花", "方片" }; String[] arr2 = { "A", "2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K" }; // 买牌 ArrayList<String> box = new ArrayList<String>(); // 添加牌 // 获取花色 for (int i = 0; i < arr.length; i++) // 获取数值 for (int j = 0; j < arr2.length; j++) box.add(arr[i] + arr2[j]); // 大小王 box.add("大王"); box.add("小王"); // 洗牌 Collections.shuffle(box); // 发牌 三张底牌给地主,剩51张,每人17张 // 三个拿牌打牌的 ArrayList<String> 七宝 = new ArrayList<String>(); ArrayList<String> 八宝 = new ArrayList<String>(); ArrayList<String> 九宝 = new ArrayList<String>(); for (int i = 0; i < box.size() - 3; i++) { if(i%3==0) 七宝.add(box.get(i)); else if(i%3==1) 八宝.add(box.get(i)); else if(i%3==2) 九宝.add(box.get(i)); } System.out.println("七宝:"+七宝); System.out.println("八宝:"+八宝); System.out.println("九宝:"+九宝); //底牌 for(int i=box.size()-3;i<box.size();i++) System.out.println(box.get(i)); } }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易盾网络。

本文共计500个文字,预计阅读时间需要2分钟。

如何用Java编写模拟斗地主发牌的小程序?

一款经典策略游戏:大小王+4*13。模拟战地主的发行过程:首先,我们需要购买游戏,新购买的卡牌都按顺序排列。由于下一步是洗牌,所以最后才是发行新卡牌。

如何用Java编写模拟斗地主发牌的小程序?

一副扑克有54张牌:大小王+4*13,接下来我们来模拟一下斗地主的发牌过程

首先,我们需要买牌,新买来的牌都是按顺序摆放的,因此下一步是洗牌,最后就是发牌了,不过发牌的时候要注意还要在最后留三张底牌。

主要使用的类有ArrayList:用来存储扑克,Collections用来洗牌。

import java.util.ArrayList; import java.util.Collections; /* * 模拟斗地主发牌 一共54张牌 * 买牌 * 洗牌 * 发牌 * */ public class DouDIZhuDemo { public static void main(String[] args) { // 花色 数组 String[] arr = { "黑桃", "红桃", "梅花", "方片" }; String[] arr2 = { "A", "2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K" }; // 买牌 ArrayList<String> box = new ArrayList<String>(); // 添加牌 // 获取花色 for (int i = 0; i < arr.length; i++) // 获取数值 for (int j = 0; j < arr2.length; j++) box.add(arr[i] + arr2[j]); // 大小王 box.add("大王"); box.add("小王"); // 洗牌 Collections.shuffle(box); // 发牌 三张底牌给地主,剩51张,每人17张 // 三个拿牌打牌的 ArrayList<String> 七宝 = new ArrayList<String>(); ArrayList<String> 八宝 = new ArrayList<String>(); ArrayList<String> 九宝 = new ArrayList<String>(); for (int i = 0; i < box.size() - 3; i++) { if(i%3==0) 七宝.add(box.get(i)); else if(i%3==1) 八宝.add(box.get(i)); else if(i%3==2) 九宝.add(box.get(i)); } System.out.println("七宝:"+七宝); System.out.println("八宝:"+八宝); System.out.println("九宝:"+九宝); //底牌 for(int i=box.size()-3;i<box.size();i++) System.out.println(box.get(i)); } }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易盾网络。