您好,登錄后才能下訂單哦!
本篇文章為大家展示了如何在java中使用ArrayList實(shí)現(xiàn)一個(gè)斗地主游戲,內(nèi)容簡(jiǎn)明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過(guò)這篇文章的詳細(xì)介紹希望你能有所收獲。
1. 準(zhǔn)備牌
每張撲克牌牌由花色和數(shù)字兩部分組成??梢允褂没ㄉ吓c數(shù)字集合嵌套迭代完成撲克牌的組裝。
2. 發(fā)牌
撲克牌組轉(zhuǎn)完畢后由Collections類的shuffle方法打亂重排,最后3張當(dāng)作底牌,剩余牌通過(guò)對(duì)3取模依次發(fā)牌。
3. 看牌
打印集合。
import java.util.ArrayList; import java.util.Collections; /** * @author layman */ public class Poker { //牌堆 private static ArrayList<String> pokerBox = new ArrayList<>(); //花色集合 private static ArrayList<String> colors = new ArrayList<>(); //創(chuàng)建數(shù)字集合 private static ArrayList<String> numbers = new ArrayList<>(); //三名玩家 private static ArrayList<String> playerOne = new ArrayList<>(); private static ArrayList<String> playerTwo = new ArrayList<>(); private static ArrayList<String> playerThree = new ArrayList<>(); private static ArrayList<String> diPai = new ArrayList<>(); public static void main(String[] args) { createPoker(); faPai(); showCards(); } /** * 創(chuàng)建撲克牌并洗牌 */ public static void createPoker(){ //4種花色 colors.add("?"); colors.add("?"); colors.add("?"); colors.add("?"); //13個(gè)數(shù)字 for(int i = 2;i <= 10;i++){ numbers.add(i+""); } numbers.add("J"); numbers.add("Q"); numbers.add("K"); numbers.add("A"); //生成撲克牌 for (String color : colors) { for(String number : numbers){ String card = color+number; pokerBox.add(card); } } pokerBox.add("小王"); pokerBox.add("大王"); //洗牌(隨機(jī)打亂撲克牌順序) Collections.shuffle(pokerBox); } /** * 發(fā)牌 */ public static void faPai(){ //發(fā)牌 for(int i = 0;i < pokerBox.size();i++){ String card = pokerBox.get(i); if(i >= 51){ //最后三張作為底牌 diPai.add(card); } else { if(i%3 == 0){ playerOne.add(card); }else if(i%3 == 1){ playerTwo.add(card); }else{ playerThree.add(card); } } } } /** * 看牌 */ public static void showCards(){ System.out.println("賭圣:" + playerOne); System.out.println("賭俠:" + playerTwo); System.out.println("賭王:" + playerThree); System.out.println("底牌:" + diPai); } }
上述內(nèi)容就是如何在java中使用ArrayList實(shí)現(xiàn)一個(gè)斗地主游戲,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。