Debug追踪与斗地主案例的需求分析

Debug追踪

使用IDEA的断点调试功能,查看程序的运行过程

  1. 在有效代码行,点击行号右边的空白区域,设置断点,程序执行到断点将停止,我们可以手动来运行程序

 

 

 

 2. 点击Debug运行模式

 

 

 

 

 程序停止在断点上不再执行,而IDEA最下方打开了Debug调试窗口

 

 

 

Debug调试窗口介绍

 

 

 快捷键F8,代码向下执行一行,第九行执行完毕,执行到第10行(第10行还未执行)

 

切换到控制台面板,控制台显示 请录入一个字符串: 并且等待键盘录入

 

 

 快捷键F8,程序继续向后执行,执行键盘录入操作,在控制台录入数据 ababcea

 

 

 

 此时到达findChar方法,快捷键F7,进入方法findChar

快捷键F8 接续执行,创建了map对象,变量区域显示

 

 快捷键F8 接续执行,进入到循环中,循环变量i为 0,F8再继续执行,就获取到变量c赋值为字符‘a’ 字节值97

 

快捷键F8 接续执行,进入到判断语句中,因为该字符 不在Map集合键集中,再按F8执行,进入该判断中

 

 

 快捷键F8 接续执行,循环结束,进入下次循环,此时map中已经添加一对儿元素

 

 快捷键F8 接续执行,进入下次循环,再继续上面的操作,我们就可以看到代码每次是如何执行的了

如果不想继续debug,那么可以使用快捷键F9,程序正常执行到结束,程序结果在控制台显示

 

 

模拟斗地主洗牌发牌

按照斗地主的规则,完成洗牌发牌的动作。

 

具体规则:

        1. 组装54张扑克牌

    2. 将54张牌顺序打乱

        3. 三个玩家参与游戏,三人交替摸牌,每人17张牌,最后三张留作底牌。

        4. 查看三人各自手中的牌(按照牌的大小排序)、底牌

l  手中扑克牌从大到小的摆放顺序:大王,小王,2,A,K,Q,J,10,9,8,7,6,5,4,3

2. 案例需求分析

l  准备牌:

完成数字与纸牌的映射关系:

使用双列Map(HashMap)集合,完成一个数字与字符串纸牌的对应关系(相当于一个字典)。

l  洗牌:

通过数字完成洗牌发牌

l  发牌:

将每个人以及底牌设计为ArrayList<String>,将最后3张牌直接存放于底牌,剩余牌通过对3取模依次发牌。

存放的过程中要求数字大小与斗地主规则的大小对应。

将代表不同纸牌的数字分配给不同的玩家与底牌。

l  看牌:

通过Map集合找到对应字符展示。

通过查询纸牌与数字的对应关系,由数字转成纸牌字符串再进行展示。

 

 

 

posted @ 2022-07-07 10:08  zj勇敢飞,xx永相随  阅读(44)  评论(0编辑  收藏  举报