Java入门第39课——猜字母游戏之实现字母生成方法
问题
实现猜字母游戏中的字母生成方法,即,随机生成5个不同的字母作为猜测的结果。
方案
实现generate方法,首先声明一个字符类型的数组,用于存储26个大写字母,然后声明一个boolean类型的数组,其长度也为26。此数组中的初始值均为false,意味着,程序起始,没有任何字母被选中。如果某个字母被选中,则同时设置该字母在boolean类型数组中对应位置上的值为true,表示该字母被选中过。
然后,使用嵌套循环:外层循环用于控制所生成的字母个数,即,循环5次,以产生5个字母;而内层循环则用于判断所生成的字母是否重复。generate方法的程序流程如图所示:
步骤
实现此案例需要按照如下步骤进行。
步骤一:构建存储所有字母的数组
在generate方法中,首先定义char类型的数组变量letters,用于存放26个大写字母,然后定义boolean类型的数组变量flag,flag数组的大小和letters数组的大小相同,用于记载某字母是否被选中,以便于判断字母是否重复。代码如下所示:
Java入门第39课——猜字母游戏之实现字母生成方法相关推荐
- Java入门第37课——猜字母游戏之设计数据结构
问题 有猜字母游戏,其游戏规则为:程序随机产生5个按照一定顺序排列的字符作为猜测的结果,由玩家来猜测此字符串.玩家可以猜测多次,每猜测一次,则由系统提示结果.如果猜测的完全正确,则游戏 ...
- Java入门第38课——猜字母游戏之设计程序结构
问题 本案例需要实现猜字母游戏程序中的程序结构 方案 分析猜字母游戏可以看出,程序首先需要随机产生5个不同的字母作为需要猜测的结果,因此,可以先定义一个方法,以实现此功能:其次,每当玩家猜测一次后,程 ...
- Java入门第107课——使用add方法向集合中添加元素
问题 使用add方法向集合中添加元素,详细要求如下: 1)使用ArrayList构造集合对象c,并输出该对象. 2)将字符串"a"."b"."c&qu ...
- Java入门第116课——向List中插入和删除元素
问题 向List集合的指定索引位置插入元素以及移除指定索引位置的元素,详细要求如下: 1)创建List接口的引用list,使该引用指向ArrayList的实例,将字符串"java" ...
- Java入门第112课——使用Iterator的hasNext方法、next方法遍历集合
问题 使用Iterator的hasNext方法.next方法遍历集合,详细要求如下: 1)使用HashSet构建集合c,将字符串"java"."cpp".&qu ...
- Java入门第53课——俄罗斯方块项目中的T类和J类
问题 在Tetris游戏中,游戏场地由10列×20行个正方形格子构成,如图所示,每个方块由四个格子组成,绘制在场地中,如图所示中的红色方块. 4个小型正方形格子组成的规则图形(Tetromino),共 ...
- Java入门第111课——集合addAll、containsAll的用法
问题 测试Collection接口中addAll方法.containsAll方法的用法,详细要求如下: 1)使用ArrayList构建集合c1,将字符串"java"."c ...
- Java入门第118课——List转换为数组
问题 将集合List转换为数组,详细要求如下所示: 1)创建List接口的引用list,使该引用指向ArrayList的实例:将字符串"a"."b"." ...
- Java入门第82课——StringBuilder的append方法
问题 StringBuilder类提供将各种数据类型变量的字符串形式追加到当前序列中的append方法,在Java API中提供的append重载方法如图-15所示: 本案例要求将字符串"j ...
最新文章
- oracle web API,在Web API程序中使用Swagger做接口文档
- http 403错误解决
- CSS外框高度自动适应
- socket 通信关于bind那点事
- 第二篇|腾讯开源项目盘点:ncnn、xLua、libco等
- 如何用Python的pyecharts库绘制K线图
- 【操作系统】同步和互斥
- jenkins集成钉消息通知
- oracle删除一张表的sql语句,oracle删除表的语句
- python3 value counts函数_如何将value_counts()输出转换为数据帧?
- 产品研发过程管理专题——产品需求分析原则一
- 网络规划设计师水平考试备考资料(6.光纤相关)
- 电商项目数据库表的学习及数据库表结构设计
- 分享微软一站式示例脚本库 - IT专业人士的省时利器
- 20221115使用google文档翻译SRT格式的字幕
- Java面试笔试经验技巧总结
- nginx日志格式分析
- 1、定义一个复数类Complex,使得下面的代码能够工作。 Complex c1(3,5); Complex c2=4.5; c1.add(c2); c1.show();
- (排序3)希尔排序时间复杂度与直接选择排序
- DialogFragment中通过dataBinding绑定View,设置点击事件无效,通过getWindow设置dialog位置和大小无效。
热门文章
- 今天无意之间看到一个免费小说站群系统叫牛犇CMS,牛犇【ben】CMS
- 计算机 英语折算学分规定,泰州学院奖励学分制度实施细则
- PHP替换字符串的几种方式
- 计算机辅助翻译翻译技术的译前应用,计算机辅助翻译技术在应用型英语教学中的运用...
- python 优先队列_python实现最大优先队列 python优先级队列如何最大值优先
- 代码片段 - 怎样获取jqGrid的各种参数? jqGrid刷新当前列表页代码
- GCN学习:Pytorch-Geometric教程(一)
- 使用 乐天 / V-IM 作为网页即时聊天
- 【java感悟】认真看书Day1
- 软件测试系列--通用测试用例写作