java模擬實(shí)現(xiàn)斗地主發(fā)牌小程序
一副撲克有54張牌:大小王+4*13,接下來(lái)我們來(lái)模擬一下斗地主的發(fā)牌過(guò)程
首先,我們需要買牌,新買來(lái)的牌都是按順序擺放的,因此下一步是洗牌,最后就是發(fā)牌了,不過(guò)發(fā)牌的時(shí)候要注意還要在最后留三張底牌。
主要使用的類有 ArrayList:用來(lái)存儲(chǔ)撲克,Collections用來(lái)洗牌。
import java.util.ArrayList;import java.util.Collections; /* * 模擬斗地主發(fā)牌 一共54張牌 * 買牌 * 洗牌 * 發(fā)牌 * */public class DouDIZhuDemo { public static void main(String[] args) { // 花色 數(shù)組 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++) // 獲取數(shù)值 for (int j = 0; j < arr2.length; j++) box.add(arr[i] + arr2[j]); // 大小王 box.add('大王'); box.add('小王'); // 洗牌 Collections.shuffle(box); // 發(fā)牌 三張底牌給地主,剩51張,每人17張 // 三個(gè)拿牌打牌的 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)); } }
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. 使用IDEA編寫jsp時(shí)EL表達(dá)式不起作用的問(wèn)題及解決方法2. idea自定義快捷鍵的方法步驟3. idea設(shè)置代碼格式化的方法步驟4. Docker容器如何更新打包并上傳到阿里云5. 刪除docker里建立容器的操作方法6. IntelliJ IDEA導(dǎo)出項(xiàng)目的方法7. Django中如何使用Channels功能8. IntelliJ IDEA設(shè)置編碼格式的方法9. Docker究竟是什么 為什么這么流行 它的優(yōu)點(diǎn)和缺陷有哪些?10. IntelliJ IDEA設(shè)置條件斷點(diǎn)的方法步驟

網(wǎng)公網(wǎng)安備