java poker_Java超级高手成长之路!一个Java编写的斗地主游戏

原标题:Java超级高手成长之路!一个Java编写的斗地主游戏

“斗地主”是全国民间流行的一款扑克牌娱乐游戏,游戏最少由3个玩家进行,最多5人,游戏逻辑简单易于上手,老少皆宜,是我们日常生活中一种休闲方式。游戏中,第一轮抓到地主的玩家第一个出牌,可以出包含最小牌的任意牌,谁先出完牌谁就胜利,为农民的一方可以以多人合作的方式让已方多出牌。该扑克牌游戏最初流行于中国湖北武汉市汉阳区,现已逐渐在全球各地流行。

423f52c9dcffd3a1bf8dedee597367f5.png

游戏思路:

1、创建一个扑克牌的实体类Poker,设置了四个参数:花色、数字、牌值(判断大小)、是否地主牌,实现getset方法和构造方法;

2、创建一个玩家的实体类Player,设置了四个参数: 初始牌集合,排序后牌集合,牌值集合,是否地主,实现getset方法和构造方法;

3、洗牌:循环嵌套花色数组跟数字数组生成52个Poker,手动加入大小王Poker,放进map(int,Poker)里面,利用Collections.shuffle随机排序map的key,再根据key生成排序后的Poker集合

4、发牌:生成3个玩家对象,拿到洗牌后的集合,前51张牌为玩家牌,后3张为地主牌,在51张牌中随机一张为地主牌,遍历玩家牌分配个每一个Player,同时根据玩家牌的牌值生成集合grades存进Player对象中,将grades转为int数组并进行升序排序,根据grade取得新Poker集合分配给玩家。

实现代码如下:

Poker类:

534d94942c09f6f426f0f63c13e3abe0.png

Player类:

469bc62e737f408985855590714baa34.png

洗牌:

e41d98c1f1eacd92f15657651b38d43f.png

发牌:

5a3482aeb581116ec47a235f706988fe.png

责任编辑:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值