JavaSE-16.3.1【案例-模拟斗地主(普通版本)】
1 package day7.lesson3; 2 3 import java.util.ArrayList; 4 import java.util.Collections; 5 6 /* 7 3 斗地主案例 8 9 3.1 案例-模拟斗地主(普通版本) 10 需求 11 通过程序实现斗地主过程中的洗牌,发牌和看牌 12 思路 13 创建一个牌盒,即定义一个集合对象,用ArrayList实现 14 往牌盒里装牌 15 洗牌,即打乱,用工具类Collections的shuffle()实现 16 发牌,即遍历集合,给三个玩家发牌 17 看牌,即三个玩家分别遍历自己的牌 18 */ 19 public class PokerDemo { 20 public static void main(String[] args) { 21 ArrayList<String> arrayList = new ArrayList<>(); 22 23 String[] colors = {"♦", "♣", "♥", "♠"}; 24 String[] numbers = {"2", "3", "4", "5", "6", "7", "8", "9", "J", "Q", "K", "A"}; 25 26 for (String color: colors){ 27 for (String number: numbers){ 28 arrayList.add(color + number); 29 } 30 } 31 arrayList.add("小王"); 32 arrayList.add("大王"); 33 34 Collections.shuffle(arrayList); 35 36 ArrayList<String> dipai0 = new ArrayList<>(); 37 ArrayList<String> player1 = new ArrayList<>(); 38 ArrayList<String> player2 = new ArrayList<>(); 39 ArrayList<String> player3 = new ArrayList<>(); 40 41 for (int i=0; i<arrayList.size(); i++){ 42 String poker = arrayList.get(i); 43 if(i >= arrayList.size()-3){ 44 dipai0.add(poker); 45 }else if(i%3 == 0){ 46 player1.add(poker); 47 }else if(i%3 == 1){ 48 player2.add(poker); 49 }else if(i%3 == 2){ 50 player3.add(poker); 51 } 52 } 53 54 lookPoker("玩家1", player1); 55 lookPoker("玩家2", player2); 56 lookPoker("玩家3", player3); 57 lookPoker("底牌", dipai0); 58 // System.out.println(arrayList); 59 } 60 61 public static void lookPoker(String name, ArrayList<String> arrayList){ 62 System.out.println(name + "的牌:"); 63 for (String poker: arrayList){ 64 System.out.print(poker + " "); 65 } 66 System.out.println(); 67 } 68 69 }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!