m0_60524012 2021-07-30 18:47 采纳率: 50%
浏览 105
已结题

java练习题,扑克牌类型

一副扑克牌有54张,
1到13分别表示黑桃A,2,3,4,5,6,7,8,9,10,J,Q,K
14到26分别表示梅花A,2,3,4,5,6,7,8,9,10,J,Q,K
27到39分别表示红心A,2,3,4,5,6,7,8,9,10,J,Q,K
40到52分别表示方块A,2,3,4,5,6,7,8,9,10,J,Q,K
53表示小王,54表示大王
现在把牌抽象成一个类Card,有2个属性
intvalue//牌的整数值
Stringdesc;//牌的描述,比如黑桃A
以及一个show方法.
一张牌就是一个Card对象,54张牌就有54个Card对象
请写另一个类CardMngr,该类中实现一个方法初始化54张牌
的信息(54个Card对象)
该类中有成员变量Card[]数组,intsize表示现有牌的
数量
请在CardMngr中实现如下方法:
publicStringgetCard(intvalue);//根据整数值返回牌
的描述信息,也就是到数组中根据牌的value值查找牌的描
述信息返回,如果value不合法,返回null
publicCardgetCard(intvalue);//根据牌的整数值返回
牌的整个对象
publicCard[]randomCard(intnum);//从现有牌数组中随
机num张牌,随机到的牌存到新数组中作为返回值返回,并
且每随机一张牌,该张牌都要从数组中删除(可把该牌移动
到最后,然后用Arrays.copyOf截取),size减1.
publicvoidshow();//打印出剩余牌的信息
publicbooleanaddCard(Cardcard);//增加一张牌到数组
中,如果当前数组已有54张牌,或者数组中已有这张牌,则
返回失败
publicbooleandelCard(intvalue);//删除指定值的牌.
publicbooleanupdateCard(intvalue,Stringdesc);改
变牌值为value的描述信息为desc,如果没找到这张牌,返
回false;

  • 写回答

2条回答 默认 最新

  • 信仰柴神的人 2021-07-31 20:47
    关注

    先创建3个类
    img
    写扑克牌类的属性(花色和点数)
    img
    注意大小王没有花色在重写toString做一下判断
    写玩家类的属性(玩家姓名和是否是地主)
    img
    写游戏类,写好牌的花色和点数,用for循环对牌进行初始化
    img

    img
    开始游戏

    img
    结果显示
    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 8月9日
  • 已采纳回答 8月1日
  • 创建了问题 7月30日

悬赏问题

  • ¥15 python天天向上类似问题,但没有清零
  • ¥30 3天&7天&&15天&销量如何统计同一行
  • ¥30 帮我写一段可以读取LD2450数据并计算距离的Arduino代码
  • ¥15 C#调用python代码(python带有库)
  • ¥15 矩阵加法的规则是两个矩阵中对应位置的数的绝对值进行加和
  • ¥15 活动选择题。最多可以参加几个项目?
  • ¥15 飞机曲面部件如机翼,壁板等具体的孔位模型
  • ¥15 vs2019中数据导出问题
  • ¥20 云服务Linux系统TCP-MSS值修改?
  • ¥20 关于#单片机#的问题:项目:使用模拟iic与ov2640通讯环境:F407问题:读取的ID号总是0xff,自己调了调发现在读从机数据时,SDA线上并未有信号变化(语言-c语言)