溫馨提示×

溫馨提示×

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

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

java模擬實現(xiàn)斗地主發(fā)牌小程序的方法

發(fā)布時間:2020-08-01 11:16:49 來源:億速云 閱讀:166 作者:小豬 欄目:編程語言

這篇文章主要講解了java模擬實現(xiàn)斗地主發(fā)牌小程序的方法,內(nèi)容清晰明了,對此有興趣的小伙伴可以學習一下,相信大家閱讀完之后會有幫助。

一副撲克有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) {
 // 花色 數(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張
 // 三個拿牌打牌的
 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));
 
 
 }
 
}

看完上述內(nèi)容,是不是對java模擬實現(xiàn)斗地主發(fā)牌小程序的方法有進一步的了解,如果還想學習更多內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

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

AI