public class Poker{
//共四種黑桃,紅心,方塊,梅花牌各13張
String Player[][] = new String[13][4];
//全部共52張牌
String Card[] = new String[52];
public static void main(String args[]){
Poker pk = new Poker();
pk.createCard();
for(int i=0; i<13; i++){
for(int j=0; j<4; j++){
pk.createdetail(i, j);
}
}
pk.printdetail();
}
//產生卡片:黑桃,紅心,方塊,梅花
void createCard(){
for (int j=0; j<52; j++){
switch (j%4){
case 1:
Card[j] = "黑桃" +(j%13+1);
break;
case 2:
Card[j] = "紅心" +(j%13+1);
break;
case 3:
Card[j] = "方塊" +(j%13+1);
break;
case 0:
Card[j] = "梅花" +(j%13+1);
break;
}
}
}
//產生數字
void createdetail(int i, int j){
int x = 0;
do{
x = (int)(Math.random()*52);
}while(chk(x));
savedetail(x, i, j);
}
//判斷是否重覆
boolean chk(int x)
{
for(int i=0; i<13; i++){
for(int j=0; j<4; j++){
if (Card[x] == Player[i][j]){
return true;
}
}
}
return false;
}
//將值填入
void savedetail(int x, int i, int j)
{
Player[i][j] = Card[x];
}
//列印結果
void printdetail()
{
for(int j=0; j<4; j++)
{
for(int i=0; i<13; i++)
{
System.out.print(Player[i][j] +"\t");
}
System.out.println();
}
}
}