牌必須依次按照上半部分和下半部分的順序進行交替,直到它通過52張牌組。每層甲板一半有26卡,他們按以下順序去:如何在java中構建一種卡片洗牌方法以便按特定順序進行卡片轉出?
top1, bottom1, top2, bottom2, top3, bottom3, top4, bottom 4, ..., top n, bottom n
我想這樣做的:在使用中,他們的順序Card[] topHalf= new Card[cards.length/2];
public void shuffle() {
int index = 0;
for (int suit = 0; suit <= 1; suit++) {
for (int value = 1; value <= 13; value++) {
cards[index] = new Card(value, suit);
index++;
}
}
Card[] botHalf= new Card[(cards.length+26)/2];
int index2 = 0;
for (int suit = 2; suit <= 3; suit++) {
for (int value = 1; value <= 13; value++) {
cards[index] = new Card(value, suit);
index2++;
}
for (int row = 0; row < cards.length; row++){
row++;
Card [] temp = new Card[(topHalf.length)+botHalf.length];
//cards[row]= cards[index];
}
請澄清;它不是洗牌,如果你把這張牌放在特定的順序 – ninjagecko 2011-04-19 01:55:23
@ninja我認爲我們正在尋找的短語是「淺灘洗牌」。 – 2011-04-19 02:09:13
如果他正在尋找步槍洗牌或「猴子洗牌」作爲java開發人員把它放在集合API中已經有一個方法。 – Woot4Moo 2011-04-19 02:14:27