利用集合模擬鬥地主發牌的過程

2021-10-11 04:54:30 字數 1285 閱讀 9291

public class porkgame_demo02 ;

string porkcolor = ;

//2.建立兩個集合,乙個用來存放每一張具體的牌(hashmap),乙個用來存放每張牌對應的索引(arraylist)。

//第乙個用hashmap因為該集合具備鍵值對,能夠通過鍵來確定具體的牌,而索引是有序的所以存到list集合中。

hashmappork = new hashmap();

listlist = new arraylist(); //父類引用指向子類物件

//3.遍歷1.中的兩個陣列,將每個牌元素存入到建立的集合中,並且需要初始化索引下標

int index = 0;

for (string pnum : porknum)

} //現在除了大小王,都存入集合了,就差大小王,因為index++是放在語句最後一行,所以現在index值已經自增了,開始新增

pork.put(index, "subjoker");

list.add(index);

index++;

pork.put(index, "superjoker");

list.add(index);

//4.新增元素完畢,將撲克牌打亂順序

collections.shuffle(list);

//5.開始發牌,為了將牌可以按照自然順序排列展現在玩家手中,故將索引元素存放在treeset中

treesetplayer01 = new treeset();

treesetplayer02 = new treeset();

treesetplayer03 = new treeset();

treesetfinalcard = new treeset();

//開始發牌

for(int i=0 ; ipork.size()-4) else if(i%3==0) else if(i%3==1) else

} //建立乙個方法將每個人獲得的牌列印出來,呼叫該方法列印每個玩家的牌

showpork(pork,player01,"玩家01");

showpork(pork,player02,"玩家02");

showpork(pork,player03,"玩家03");

showpork(pork,finalcard,"底牌");

}public static void showpork(hashmappoker,treesetindex,string name)

system.out.print("\n\n");

}

用Map集合模擬鬥地主洗牌發牌

具體規則 組裝54張撲克牌將 54張牌順序打亂 三個玩家參與遊戲,三人交替摸牌,每人17張牌,最後三張留作底牌。檢視三人各自手中的牌 按照牌的大小排序 底牌 規則 手中撲克牌從大到小的擺放順序 大王,小王,2,a,k,q,j,10,9,8,7,6,5,4,3 準備牌 大王 小王 2 a k q j ...

模擬鬥地主洗牌和發牌

分析 a 建立乙個牌盒 b 裝牌 c 洗牌 d 發牌 e 看牌 public class test system.out.println public static void main string args 定義乙個點陣列 string numbers for string c colors ar...

小專案 模擬鬥地主發牌

a 鬥地主的功能分析 a 具體規則 1.組裝54張撲克牌 2.將54張牌順序打亂 3.三個玩家參與遊戲,三人交替摸牌,每人17張牌,最後三張留作底牌。4.檢視三人各自手中的牌 按照牌的大小排序 底牌 b 分析 1.準備牌 完成數字與紙牌的對映關係 使用雙列map hashmap 集合,完成乙個數字與...