溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ArrayList+Collections怎么實現斗地主游戲

發(fā)布時間:2021-12-18 14:28:46 來源:億速云 閱讀:131 作者:iii 欄目:大數據

本篇內容主要講解“ArrayList+Collections怎么實現斗地主游戲”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“ArrayList+Collections怎么實現斗地主游戲”吧!

一副撲克有54張牌:大小王+4*13,接下來我們來模擬一下斗地主的發(fā)牌過程

首先,我們需要買牌,新買來的牌都是按順序擺放的,因此下一步是洗牌,最后就是發(fā)牌了,不過發(fā)牌的時候要注意還要在最后留三張底牌。

主要使用的類有 ArrayList:用來存儲撲克,Collections用來洗牌。

import java.util.ArrayList;

import java.util.Collections;

/*

 *  模擬斗地主發(fā)牌   一共54張牌

 *  買牌 

 *  洗牌

 *  發(fā)牌

 * 

 */

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);

// 發(fā)牌 三張底牌給地主,剩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));

}

}

到此,相信大家對“ArrayList+Collections怎么實現斗地主游戲”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續(xù)學習!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI