使用java语言实现简单的收支记账软件
该项目在尚学堂进行学习,个人整理并将我遇到的问题也整合其中,力求通俗易懂。
整个软件在命令行中运行,包括有四个部分的显示:收支明细、登记收入、登记输出、退出。通过用户选择对应的数字序 ,进行相应的功能使用。
该项目由两个类实现,一个是主类Account,一个是工具类Utility,接下来通过五个部分的设计实现整个软件。
1.主菜单界面设计
设计一个Account类包括有收支明细、登记收入、登记输出、退出四项功能以及让用户选择数字序 的提示语。

主菜单部分代码设计如下(代码中对应要点之后有解释):
要点一: 为了实现用户每次选择功能执行完成后能够再次返回到主菜单界面,整个部分由一个while循环语句包裹,设定boolean型变量isFlag默认值为true是为了保持循环持续进行。那么程序如何结束sFlag的值变为false就好了,具体内容请看退出部分的设计。
要点二: 此处调用了Utility下的readMenu方法,该方法的作用是获取用户输入的字符,并进行判断是否符合格式,格式正确则返回一个char格式数据。该方法代码如下:
其中还调用了本类下的getKeyBoard()方法,该方法同样是为了规格化输入,括 内的参数指定了可以接受的字符数,格式正确返回一个String类型的数据。该方法代码如下:
要点三: 为了实现用户选择不同功能从而出现不同结果,此处使用switch分支语句进行判定。例如,如果用户键入数字 ‘1‘’,则进入switch分支中 case’1’ 的内容中。
2.收支明细功能设计
该模块主要通过表格的形式显示,进行显示的内容有收支、账户金额、收支金额、说明。而且表格内容要随着用户的添加信息而增多,如何通过简单的方法实现表格的效果表格只会增加,且随着用户的添加每次只添加一行,一个可行的办法是,设置一个字符串(这里为details),初始化时向字符串中写入表头,而随着用户每次添加数据,就顺势向details中添加内容,则该字符串中的内容就是一个不断添加的表格了。该部分代码如下:
3.登记收入功能设计
该部分主要功能是获取用户输入的金额信息和附加的说明信息,并添加到收支明细中去,代码如下:
该方法中使用了Utility中的readNumber()方法和readinfo方法,这两个方法的作用分别是获取用户输入的数字和字符串,若符合规则则返回一个int类型数据和String类型数据。以下是代码(由于获取数字的方法使用了int类型,则必须输入一个int类型的数据,如有需要,请将方法中的类型修改。):
4.登记支出功能设计
该部分内容与登记支出部分大体类似,修改的地方是在计算账户总金额时,需要减去用户输入的数字,代码如下:
5.退出功能设计
该模块的功能是退出软件系统,方法是终止整个主类的主体:while循环。要终止while循环就需要让括 中的参数判定为false,则只需要将isFlag变量设置为false即可。该模块为了防止用户误操作,进行了二次确定,实现思想与上述获取并规范用户输入的方法类似,以下是代码:
此处调用了Utility类下的readExit方法。该方法作用是规范用户输入,确保最终传入的字母是为Y或N,为了实现无论大小写都可以识别,若是小写则转换为大写。
整个项目到此设计完成。
文章知识点与官方知识档案匹配,可进一步学习相关知识Java技能树使用JDBC操作数据库数据库操作93549 人正在系统学习中
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!