2019-05-24

今天练习了双色球的游戏,这是我写过的最长的代码。刚开始听见要求的时候,我一脸懵逼,根本不知道从何下手,今天老师给我们详细讲解,逐字逐句的对代码剖析。这才明白。对编程思想有了新的认识。我来说一说对编程思想的理解,纯属个人感受,不喜勿喷。老师刚开始讲课的时候就说,java是面向对象的语言,我只是记住了,并没有体会其中的奥义。我来结合今天的练习来说一说。今天的双色球,咋一看很复杂,找到头绪,写起来并不是那么的难,首先任何游戏都有一个界面。

这是我们第一天就学的内容,这个很容易,但是,要想实现这三个功能,还需要细细琢磨,那么我们学过的分支结构有几种 if...else 和switch结构,选择不一样的分支结构,意味着代码量会有差别,哪一个简单,我就选那个。当然我选择switch,等值判断,结构清晰明了。


购买彩票的方法


手选彩票的方法


兑奖方法,虽然没有单独定义一个方法,效果一样


显示金额及所选号码的方法


老师说,如果你能在一个方法里写出来也可以!很显然,老师知道,对于java小白来说,很难去分解问题,只想按照正常的思维顺序去解决问题,通过今天的代码,我看到了真相,把复杂的问题简单化,把复杂的代码模块化,比如今天的程序,双色球分为选球,开奖,兑奖,那么我可以写一个机选的方法, 一个手选的方法,一个开奖的方法,把这些方法用控制语句拼接起来,那么看似庞大的任务,就迎刃而解。显然今天的最大收获就是对编程思维的收获,原因就在这里。以上代码备注很详细,当然我依然用的switch来连接。


开奖方法

这个方法抽出来,因为确实有点难理解,老师讲过遇到数组直接用for进行输出,这个没什么好说的,红球6个,蓝球1个,那么怎么把红球和放到数组里并且能单独输出呢,定义一个7位的数组,把红球按顺序放到前六个格子里,最后一个放蓝球,这样就能分别输出红球和蓝球了。这里还用了循环嵌套。这个也是比较难想出来的,我们都知道,双色球的开奖是不论你顺序如何,只要数字和开奖号码一致,就可以了。那么,循环嵌套正好可以解决这一问题,外层循环执行一次,内层循环执行一遍,那么,就把数组里所有值挨个比较。

麻雀虽小,五脏俱全,今天的项目,把之前学的所有内容都涉及到了,看似小的项目,却让我对所学的知识,进行了巩固,加深了理解。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容