public class Card {
public String rank
;
public String suit
;
public Card(String rank
, String suit
) {
this.rank
= rank
;
this.suit
= suit
;
}
@Override
public String
toString(){
return String
.format("[%s %s]",suit
,rank
);
}
}
import java
.util
.Collections
;
import java
.util
.List
;
import java
.util
.ArrayList
;
import java
.util
.Random
;
public class Demo {
public static final String
[] SUITS
= {"♥","♠","♣","♦"};
private static List
<Card> buyCard(){
List
<Card> cards
= new ArrayList<>(52);
for (int i
= 0; i
< 4; i
++) {
Card aCard
= new Card("A",SUITS
[i
]);
cards
.add(aCard
);
for (int j
= 2; j
< 11; j
++) {
Card card
= new Card(j
+ "",SUITS
[i
]);
cards
.add(card
);
}
Card jCard
= new Card("J",SUITS
[i
]);
Card qCard
= new Card("Q",SUITS
[i
]);
Card kCard
= new Card("K",SUITS
[i
]);
cards
.add(jCard
);
cards
.add(qCard
);
cards
.add(kCard
);
}
return cards
;
}
private static void swap(List
<Card> deck
,int i
, int j
) {
Card tem
= deck
.get(i
);
deck
.set(i
,deck
.get(j
));
deck
.set(j
,tem
);
}
private static void myShuffle(List
<Card> deck
) {
Random random
= new Random();
for (int i
= deck
.size() - 1; i
> 0; i
--) {
swap(deck
,i
,random
.nextInt(i
));
}
}
public static void main(String
[] args
) {
List
<Card> deck
= buyCard();
System
.out
.println("刚买到的扑克牌");
System
.out
.println(deck
);
myShuffle(deck
);
System
.out
.println("洗过的牌");
System
.out
.println(deck
);
List
<List
<Card>> hands
= new ArrayList<>();
hands
.add(new ArrayList<>());
hands
.add(new ArrayList<>());
hands
.add(new ArrayList<>());
for(int i
= 0; i
< 5; ++i
){
for(int j
= 0; j
< 3; ++j
){
hands
.get(j
).add(deck
.remove(0));
}
}
System
.out
.println("A手中的牌:");
System
.out
.println(hands
.get(0));
System
.out
.println("B手中的牌:");
System
.out
.println(hands
.get(1));
System
.out
.println("C手中的牌:");
System
.out
.println(hands
.get(2));
System
.out
.println("剩余的牌:");
System
.out
.println(deck
);
}
}
转载请注明原文地址: https://mac.8miu.com/read-514961.html