使用java理解程序逻辑_第1页
使用java理解程序逻辑_第2页
使用java理解程序逻辑_第3页
使用java理解程序逻辑_第4页
使用java理解程序逻辑_第5页
已阅读5页,还剩29页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第十七章项目案例:迷你DVD管理器能理解程序基本概念–程序、变量、数据类型会使用顺序、选择、循环、跳转语句编写程序会使用数组、操作字符串会使用带参方法会定义类、创建和使用对象使用SimpleDateFormat类对字符串进行日期格式化系统概述为某音像店开发一个迷你DVD管理器,实现DVD碟片的管理,包括如下功能:新增DVD查看DVD删除DVD借出DVD归还DVD演示案例:迷你DVD管理器系统开发步骤明确需求设计对象保存DVD信息设计技术框架采用Java技术编码顺序1、数据初始化2、菜单切换3、完成各种DVD管理操作测试界面交互设计的原则统一性原则界面风格统一:用相同方式展现相同类型的数据,如:日期类型交互风格统一:用相同方式完成相同类型的操作,如:录入日期美观性原则界面美观大方易用性原则操作方式自然、易理解如何保存DVD信息?如何访问DVD信息?如何删除DVD信息?如何计算租金?使用数组对象保存DVD信息每张DVD的信息都包括名称、是否可借的状态以及借出的日期包含多张DVD参考代码public

class

DVDSet{String[]name=new

String[50];//DVD名称数组int[

]

state

=

new

int[50]; //DVD借出状态:0已借出/1可借String[

]

date=new

String[50]; //DVD借出日期}也可以采用对象数组来保存信息DVD

[

]

dset=new

DVD[50];访问DVD信息创建DVD对象数组dvd后,访问第i+1张DVD信息名称:[i]状态:dvd.state[i]借出日期:dvd.date[i]参考代码DVDSet

dvd

=

new

DVDSet();…

System.out.println([i]

);System.out.println(dvd.

state[i]

);System.out.println(dvd.

date[i]

);…计算租金租金=日期差*(租金/每天)计算日期差借出日期利用“年-月-日”的字符串形式保存,可利用类

SimpleDateFormat对字符串进行日期格式化,再求日期差参考代码SimpleDateFormat

sd=new

SimpleDateFormat("yyyy-MM-dd");…Date

d1=sd.parse(dstr1);Date

d2=sd.parse(dstr2);charge=(d2.getTime()-d1.getTime())/(24*60*60*1000);//得到日期差用例1:数据初始化[20分钟]用例2:实现菜单切换[25分钟]用例3:实现查看DVD信息[20分钟]用例4:实现新增DVD信息[20分钟]用例5:实现删除DVD信息[25分钟]用例6:实现借出DVD业务处理[25分钟]用例7:实现归还DVD业务处理[25分钟]用例8:实现借出排行榜[20分钟]需求说明初始化DVD信息思路分析创建项目MiniDvd创建类DVDSet,添加相应属性创建类DVDMgr,添加方法initial(),初始化三张DVD碟片信息nameStatedate罗马假日02010-7-1风声鹤唳1浪漫满屋1完成时间:20分钟功能测试创建类DVDSet创建类DVDMgr,初始化DVD碟片信息功能测试互相验证完成的程序功能小组长检查本组完成情况需求说明编写程序入口,实现菜单显示和切换思路分析创建方法startMenu(),实现菜单切换创建方法returnMain(),返回主菜单编写类Start,实现程序入口难点提示使用switch语句实现菜单切换完成时间:25分钟功能测试实现菜单切换输入非数字时程序报错功能测试互相验证完成的程序功能小组长检查本组完成情况需求说明遍历dvd,获取数组元素信息,并进行显示思路分析在类DVDMgr中创建方法search(),完成功能要求根据状态值输出“已借出”或

“可借”难点提示循环结束条件:[i]==null完成时间:20分钟功能测试正确输出所有DVD信息正确输出DVD状态信息输出格式正确功能测试互相验证完成的程序功能小组长检查本组完成情况常见调试问题及解决办法代码规范问题共性问题集中讲解需求说明向dvd数组增加一条DVD信息,实现新增DVD信息思路分析在类DVDMgr中创建方法add(),完成功能要求定位新增位置插入DVD信息,状态值为1难点提示定位新增位置:第一个name为null的位置完成时间:20分钟功能测试正确新增DVD功能测试互相验证完成的程序功能小组长检查本组完成情况需求说明按照输入的名称,删除指定DVD信息思路分析查找要删除元素通过把后面的元素依次前移一位,实现删除;最后一个不为空元素置空难点提示不允许删除借出状态的DVD不存在指定DVD,给出提示完成时间:25分钟功能测试正确删除未借出DVD删除借出状态的DVD,给出相应提示

指定删除不存在的DVD,给出相应提示功能测试互相验证完成的程序功能小组长检查本组完成情况常见调试问题及解决办法代码规范问题共性问题集中讲解需求说明按照输入的名称,借出指定DVD思路分析查找要借出的DVD判断是否存在判断是否已借出如果可借,修改state值难点提示各种情况的判断条件完成时间:25分钟功能测试正确借出匹配的未借出DVD借出匹配的已借出DVD,给出相应提示借出无匹配的DVD,给出相应提示功能测试互相验证完成的程序功能小组长检查本组完成情况需求说明编写方法returnDvd(),实现归还DVD,并计算租金思路分析查找要归还的DVD判断是否存在判断是否未借出如果已借出,修改state值,并计算和输出租金难点提示字符串-日期转换完成时间:25分钟功能测试正确归还借出状态的DVD归还未借出的DVD,给出相应提示归还不存在的DVD,给出相应提示功能测试互相验证完成的程序功能小组长检查本组完成情况常见调试问题及解决办法代码规范问题共性问题集中讲解需求说明增加菜单项“借出排行榜”,实现借阅次数从大到小的顺

序显示借出排行榜思路分析DVDSet中添加属性count为count赋初始值利用冒泡排序实现排行榜每次借出成功后,count++难点提示冒泡算法完成时间:20分钟冒泡排序算法依次比较相邻两个数,将小数放前,大数放后。需,将最大数放到了最后比pu较blicns-1ta趟tic

void

main(String[]args){int

arr[

]

=

{

10,

20,

50,

40,

23,

45,

60

};第一fo趟r(:int依i=次0;

比i<较arr第.len1g个th数-1;

和i++第){2个数、第2个数和3个数,直for至(in最t

j

后=i

两+1个;j

数<a。rr.l第eng一th趟;j+结+)束{if

(arr[i]

>

arr[j])

{int

tempc

=

arr[i];第二趟:依次a比rr[较i]=第ar2r[个j];

数和第3个数、第3个数和4arr[j]

=

tempc;个数,直至}最后两个数。依次进行}

第三趟...第n-1趟,最终排序完成}//输出排序后数组for

(int

i

=

0;

i

<

arr.length;i++)

{冒泡排序S示yst例em.out.println(arr[i]);}}利用冒泡排序算法进行排序功能测试正确输出借出排行榜输出格式正确功能测试互相验证完成的程序功能小组长检查本组完成情况讲解要点:完成情况、技能总结、经验分享、项目收获表达要求:清晰流畅、有条理、重点突出项目展示主要技能

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论