java-四人发牌-面向对象(无大王小王)

##java-四人发牌-面向对象
采用面向对象的方式编写一个发牌游戏。四名牌手打牌,电脑随机將52张牌(不含大、小王)发给四名牌手,并在屏幕上显示每位牌手的牌。//提示:设计出三个类: Card类(代表每一张扑克)、Player类(代表每一位选手)和Poke类(代表一副牌)。

public class Card {//定义card类
 String type;
 Card(String color,int num)//构造一张牌
 {
  type=color+num;
 }
 Card(String color,String num)
 {
  type=color+num;
 }
}
public class Poke {//定义一副牌
 Card[] card=new Card[52];
 Poke()//构造一副牌
 {
  for(int i=0;i<13;i++)
  {
   if(i<=9&i>=1)
   {
    card[i]=new Card("黑桃",i+1);
    card[i+13]=new Card("红桃",i+1);
    card[i+13*2]=new Card("黑梅",i+1);
    card[i+13*3]=new Card("方块",i+1);
   }
   else if(i==0)
   {
    card[i]=new Card("黑桃","A");
    card[i+13]=new Card("红桃","A");
    card[i+13*2]=new Card("黑梅","A");
    card[i+13*3]=new Card("方块","A");
   }
   else if(i==10)
   {
    
    card[i]=new Card("黑桃","J");
    card[i+13]=new Card("红桃","J");
    card[i+13*2]=new Card("黑梅","J");
    card[i+13*3]=new Card("方块","J");
   }
   else if(i==11)
   {
    
    card[i]=new Card("黑桃","Q");
    card[i+13]=new Card("红桃","Q");
    card[i+13*2]=new Card("黑梅","Q");
    card[i+13*3]=new Card("方块","Q");
   }
   else
   {
    
    card[i]=new Card("黑桃","K");
    card[i+13]=new Card("红桃","K");
    card[i+13*2]=new Card("黑梅","K");
    card[i+13*3]=new Card("方块","K");
   }
  }
 }
 Card[] getCard()
 {
  return card;
 }
 }
 import java.util.Random;
public class Player {//定义每个玩家
 static int num=-1;
 Card[] str=new Card[13];
 Player(Card card[],int flag[])
 {
  Random r=new Random();
  for(int i=0;i<13;i++)
  {
   int x=r.nextInt(52);
   if(flag[x]==0)
   {
    str[i]=card[x];
    flag[x]=1;
   }
   else i--;
  }
  num++;
 }
 void showCard()//展示每位玩家的牌
 {
  System.out.print("第"+num+"牌手:");
  for(int i=0;i<13;i++)
  {
   if(i!=12) System.out.print(str[i].type+" ");
   else System.out.println(str[i].type);
  }
 }
}
public class PlayCard {//开始游戏
 public static void main(String[] args) {
  // TODO Auto-generated method stub
  Poke poke=new Poke();
  Player[] player=new Player[4];
  int[] flag=new int[52];
  for(int i=0;i<4;i++)
  {
   player[i]=new Player(poke.getCard(),flag);
   player[i].showCard();
  }
 }
}

你帅你美不点赞?
么么

发布了2 篇原创文章 · 获赞 3 · 访问量 114

猜你喜欢

转载自blog.csdn.net/m0_46228051/article/details/105119163
今日推荐