电话簿管理系统(超详细)

这篇博客之前从另外一个博客发过一次,只不过那个博客被我注销了,于是再发一次。这个小作业是在自学javase八成之后向老师要的一个小项目,练练手,也让自己学过的知识更加巩固,当时上网查找这个项目的代码什么的发现很多都需要费用,写这篇博客也是想把这个东西分享给大家,博客上所写的代码仅供参考,有什么不足的地方请各位大牛们随时指正,下面的图片是从项目指导书里面复制过来的,为了给大家看的更清楚,也更明白编写的结构和需求。好了,废话不多说,详细请看下方

一、项目描述

该项目是用于日常生活中记录联系人信息的一款小工具。

实现了对联系人的姓名、年龄、性别、电话号码、住址的添加及修改、查找、删除、排序等功能。该项目是以windows控制台为运行平台,所有的操作都应在控制台上进行。

1.1、编写目的

1、该项目编写的主要目的使学员对以往所学过的知识点做一个统一的复习,将平时所学的内容综合到一起并运用到实际代码编写中。

2、 该项目能够充分的体现出一些简单的业务流程处理,能够使学员掌握基本的业务流程控制。

二、项目流程图

2.1业务流程结构图

2.2基本操作流程图

2.2.1当运行主程序后可在控制台显示主菜单,用户可选择菜单中的选项进行相应的操作如用户输入的菜单选项超出当前菜单所规定的范围外,程序不予以执行,并返回当前菜单,用户需要重新输入。见(图表1)

2.2.2用户选择1 可进入添加记录的下级子菜单见(图表2)

2.2.3当进入下级子菜单后,用户可根据提示进行用户的添加见(图表3)

 

2.2.4在添加新联系人时应对所添加的选项进行验证,如果有输入错误应提示见(图表4)

2.2.5添加完毕后可查看电话薄内的全部记录见(图表5)

2.2.6选择返回选项时,可返回上级主菜单见(图表6)

 

2.2.7选择2进入查找记录子菜单见(图表7)

 

2.2.8用户可根据具体内容进行相关查询见(图表8)

2.2.9选择3进入修改记录子菜单见(图表9)

 

2.2.10通过查看全记录,找到要修改联系的ID号对联系人的内容进行相应的修改见(图表10,11)

 

 

2.2.11选择4进入删除记录子菜单见(图表12)。

 

2.2.12删除共分为删除指定记录和删除全部两种操作。删除指定记录时需要输入被删除

人的ID序号。删除成功后可继续操作见(图表13,14)

 

此时ID为1的ZhangSan用户已被删除,ID为2的LiSi的ID序号会制动增长为1

 

2.2.13删除全部用户。选择该选项可将电话薄清空见(图表15)

 

2.2.14用户可选择不同的选项对电话薄内的信息进行任意排序见(图表16,17,18,19)

 

按姓名排序结果

按年龄排序结果

 按性别排序结果

 

三、设计流程图

四、类设计流程图

五、技术要求

键盘输入Scanner类

正则表达式Pattern类

容器ArrayList类

排序方式(比较器排序)Comparator接口,Collections类

六、编码规范

1、类名

App 对应 Application(程序入口函数)

Menu 对应 Menu (菜单类)

Operate 对应 Operate (业务处理类)

Person 对应 Person (实体类)

TelNoteRegex 对应 TelNoteRegex(用户输入验证类)

OrderByName 对应 OrderByName (姓名排序比较器)

OrderByAge 对应 OrderByAge (年龄排序比较器)

OrderBySex 对应 OrderBySex(性别排序比较器)

2、方法名

2.1、App类中方法(无成员变量)

main() 程序入口函数

start() 主菜单控制

2.2、Operate类中方法及成员变量

*private* Vector<Person> v 集合

addLogic() 用户添加信息业务逻辑控制

searchLogic() 用户查询信息业务逻辑控制

modifyLogicLogic() 修改信息业务逻辑控制

deleteLogic() 删除信息业务逻辑控制

orderLogic() 排序信息业务逻辑控制

addOperation () 添加新用户信息

showAll() 查询全部用户信息

searchByName() 按姓名查询用户信息

searchByAge() 按年龄查询用户信息

searchBySex() 按性别查询用户信息

searchByTelNum() 按电话号码查询用户信息

searchByAdd() 按地址查询用户信息

modify() 修改指定记录信息

delete() 删除指定用户信息

deleteA

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

长安也有星星

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值