public
class
game2
; string [
] numbers=
;//記錄編號
int index=0;
//將牌放到上面的集合中 共迴圈 4*13=52次
for(string num:numbers)
} system.out.
println
("index="
+index)
;//剩餘2個編號就是大王小王
list.
add(52)
; list.
add(53)
; map.
put(52,
"小王");
map.
put(53,
"大王");
//發牌之前 需要將牌打亂 ,也就是隨機
collections.
shuffle
(list)
;//預設排序
//發牌開始 ( 3人 , 還要 留下3張底牌) 需要定義3個人 和 1個底牌 集合接收牌
list
p1 =
newarraylist
<
>()
; list
p2 =
newarraylist
<
>()
; list
p3 =
newarraylist
<
>()
; list
bottom =
newarraylist
<
>()
;//具體傳送 牌
for(
int i =
0; i < list.
size()
; i++
)else
if(i%3==
0)else
if(i%3==
1)else
}//看一下發到手裡的牌資訊
collections.
sort
(p1)
; collections.
sort
(p2)
; collections.
sort
(p3)
; collections.
sort
(bottom)
;show
("朱凱歌"
,p1,map)
;show
("王昭雯"
,p2,map)
;show
("朱凱歌"
,p3,map)
;show
("底牌"
,bottom,map);}
private
static
void
show
(string name, list
list, map
map)
system.out.
println()
;}}
index=52
朱凱歌: ♡a ♦a ♡2 ♦2 ♦4 ♡5 ♦5 ♠6 ♡6 ♣7 ♦8 ♦9 ♡10 ♦j ♡q ♠k ♡k
王昭雯: ♣a ♠2 ♣2 ♠3 ♦3 ♡4 ♣4 ♠7 ♡7 ♠8 ♣8 ♣9 ♠10 ♠j ♡j ♣j ♠q
朱凱歌: ♠a ♡3 ♣3 ♠4 ♠5 ♣5 ♦6 ♦7 ♠9 ♡9 ♦10 ♣q ♦q ♣k ♦k 小王 大王
底牌: ♣6 ♡8 ♣10
public
static
void
main
(string[
] args)
nums.
add(
"j")
; nums.
add(
"q")
; nums.
add(
"k")
; nums.
add(
"a")
;//花色和數字進行組合,並存到牌裡
for(string col:colors)
}//新增大王小王
pai.
add(
"大王");
pai.
add(
"小王");
//洗牌
collections.
shuffle
(pai)
;// 建立三個玩家以及乙個底牌集合進行儲存
list
play1 =
newarraylist
(); list
play2 =
newarraylist
(); list
play3 =
newarraylist
(); list
dipai =
newarraylist
();for
(int i =
0; i < pai.
size()
; i++
)else
else
if(i %3==
1)else}}
// 4. 檢視牌
system.out.
println
("play1"
+play1)
; system.out.
println
("play2"
+play2)
; system.out.
println
("play3"
+play3)
; system.out.
println
("dipai"
+dipai)
;}
執行結果:
play1[♦2 , ♥q, 小王, ♣2 , ♤k, ♦j, ♣q, ♤3 , ♦a, ♥j, ♣8 , ♤2 , ♦9 , ♥9 , ♣a, ♥a, ♦6 ]
play2[♤4 , ♤8 , ♦4 , ♤7 , ♣j, ♦k, ♦10 , ♤j, ♦q, ♥k, 大王, ♥7 , ♣9 , ♥3 , ♥6 , ♣5 , ♦5 ]
play3[♤9 , ♥2 , ♦7 , ♣3 , ♣6 , ♦8 , ♤10 , ♤6 , ♣10 , ♤5 , ♥8 , ♤a, ♥10 , ♥4 , ♣7 , ♤q, ♥5 ]
dipai[♣4 , ♦3 , ♣k]
集合三人鬥地主的思路
三人鬥地主 集合完成 編寫乙個自動發牌程式,模擬三人鬥地主的摸牌場景。首先要給出提示,誰首先開始摸牌,並且摸牌要和現實摸牌一樣,三人迴圈摸牌,最後還要剩餘三張底牌,同時給出地主牌,摸到地主牌的玩家擁有三張底牌。三張底牌三人都可以看到。當三張底牌派發給地主後提示玩家摸牌結束 實現思路 1 首先將一副牌...
用Map集合模擬鬥地主洗牌發牌
具體規則 組裝54張撲克牌將 54張牌順序打亂 三個玩家參與遊戲,三人交替摸牌,每人17張牌,最後三張留作底牌。檢視三人各自手中的牌 按照牌的大小排序 底牌 規則 手中撲克牌從大到小的擺放順序 大王,小王,2,a,k,q,j,10,9,8,7,6,5,4,3 準備牌 大王 小王 2 a k q j ...
Java小遊戲之鬥地主遊戲例項Map集合
1 map物件是乙個雙列的容器 2 兩列分別對應key和value,二者一一對應,是對映關係 3 map中的資料以鍵值對的形式儲存 4 鍵值是唯一的,不能重複的 hashset 底層是hashmap hashset 是依賴hashmap 的 hashset 為什麼要在底層實現hashmap 因為二者...