系统概述 为某音像店开发一个迷你DVD管理器,实现DVD碟片的管理,包括如下功能:
新增DVD 查看DVD 删除DVD 借出DVD 归还DVD 退出DVD。
实现数据初始化 实现菜单切换 实现查看DVD信息 实现新增DVD信息 实现删除DVD信息 实现借出DVD业务处理 实现归还DVD业务处理。
系统开发步骤 明确需求 、设计Java类保存DVD信息 、确定技术框架 、采用Java技术、 编码顺序 1、数据初始化 2、菜单切换 3、完成各种DVD管理操作 测试。
需求说明 创建项目DVD 创建类DVDMgr,初始化DVD碟片信息 ;实现菜单显示和切换; 输入的数字不符合要求直接退出程序; 用户可以选择新增、查看、 删除、借出、归还、退出。
思路分析 创建项目DVD; 创建类DVDMgr,添加main()方法 ;创建四个数组存储DVD信息;使用switch语句实现菜单 选择 使用do-while循环来实现 返回和退出。
DVDMgr.java
package com.cx.DVD;
import java.util.Scanner;
public class DVDMgr {
int index = 3;//下标
String[] name = new String[7];//存储DVD名称
int[] state = new int[7]; //存储DVD借出状态:0已借出/1可借
int[] date = new int[7]; //存储DVD借出日期
int[] count = new int[7]; //存储DVD借出次数
Scanner input = new Scanner(System.in);
// 新增DVD
public void AddDVD() {
System.out.println("请输入名称:");
String enName = input.next();
if (index == 7) {
System.out.println("新增《" + enName + "》失败!货架已满!");
} else {
name[index] = enName;
System.out.println("新增《" + enName + "》成功!");
state[index] = 1;
index += 1;
}
}
// 查看DVD
public void CheckDVD() {
System.out.println("序号 " + "状态 " + "名称 " + "借出日期 " + "借出次数");
for (int n = 0; n < index; n++) {
if (state[n] == 0) {
System.out.print(n + 1 + "t" + "已借出 《" + name[n] + "》 " + date[n] + "日" + "t" + "t" + count[n] + "次" + "n");
} else {
System.out.print(n + 1 + "t" + "可借 《" + name[n] + "》 " + date[n] + "日" + "t" + "t" + count[n] + "次" + "n");
}
}
}
// 删除DVD
public void DeleteDVD() {
System.out.println("请输入DVD名称:");
String enName = input.next();
for (int j=0;j<7;j++) {
if (enName.equals(name[j])) {
if (state[j] == 0) {
System.out.println("《" + enName + "》为借出状态,不能删除!");
} else {
System.out.println("删除《" + enName + "》成功!");
int i = j;
while (name[i + 1] != null) {
name[i] = name[i + 1];
state[i] = state[i + 1];
date[i] = date[i + 1];
count[i] = count[i + 1];
i++;
}
index--;
date[j] = 0;
}
break;
} else if (j == index - 1) {
System.out.println("没有找到匹配的信息");
}
}
}
// 借出DVD
public void LendDVD() {
System.out.println("请输入DVD名称:");
String enName = input.next();
for (int i=0;i<7;i++) {
if (enName.equals(name[i])) {
if (state[i] == 0) {
System.out.println("《" + enName + "》已被借出!");
} else {
System.out.println("请输入借出日期:");
date[i] = input.nextInt();
state[i] = 0;
System.out.println("借出《" + enName + "》成功!");
}
break;
}else if(i==index-1){
System.out.println("没有找到匹配的信息");
}
}
}
// 归还DVD
public void ReturnDVD() {
System.out.println("请输入DVD名称:");
String enName = input.next();
System.out.println("请输入归还日期:");
int reDate = input.nextInt();
for (int i=0;i<7;i++) {
if (enName.equals(name[i])) {
if(state[i]==0) {
System.out.println("归还《" + enName + "》成功!");
System.out.println("借出日期为:" + date[i]);
System.out.println("归还日期为:" + reDate);
System.out.println("应付租金(元):" + (reDate - date[i]));
state[i] = 1;
count[i]++;
break;
}else {
System.out.println("未借出,不能归还!");
}
break;
}else if(i==index-1){
System.out.println("没有找到匹配的信息");
}
}
}
// 退出DVD
public void Exit() {
}
}
TestDVDMgr.java
package com.cx.DVD;
import java.util.Scanner;
public class DVDMgr {
int index = 3;//下标
String[] name = new String[7];//存储DVD名称
int[] state = new int[7]; //存储DVD借出状态:0已借出/1可借
int[] date = new int[7]; //存储DVD借出日期
int[] count = new int[7]; //存储DVD借出次数
Scanner input = new Scanner(System.in);
// 新增DVD
public void AddDVD() {
System.out.println("请输入名称:");
String enName = input.next();
if (index == 7) {
System.out.println("新增《" + enName + "》失败!货架已满!");
} else {
name[index] = enName;
System.out.println("新增《" + enName + "》成功!");
state[index] = 1;
index += 1;
}
}
// 查看DVD
public void CheckDVD() {
System.out.println("序号 " + "状态 " + "名称 " + "借出日期 " + "借出次数");
for (int n = 0; n < index; n++) {
if (state[n] == 0) {
System.out.print(n + 1 + "t" + "已借出 《" + name[n] + "》 " + date[n] + "日" + "t" + "t" + count[n] + "次" + "n");
} else {
System.out.print(n + 1 + "t" + "可借 《" + name[n] + "》 " + date[n] + "日" + "t" + "t" + count[n] + "次" + "n");
}
}
}
// 删除DVD
public void DeleteDVD() {
System.out.println("请输入DVD名称:");
String enName = input.next();
for (int j=0;j<7;j++) {
if (enName.equals(name[j])) {
if (state[j] == 0) {
System.out.println("《" + enName + "》为借出状态,不能删除!");
} else {
System.out.println("删除《" + enName + "》成功!");
int i = j;
while (name[i + 1] != null) {
name[i] = name[i + 1];
state[i] = state[i + 1];
date[i] = date[i + 1];
count[i] = count[i + 1];
i++;
}
index--;
date[j] = 0;
}
break;
} else if (j == index - 1) {
System.out.println("没有找到匹配的信息");
}
}
}
// 借出DVD
public void LendDVD() {
System.out.println("请输入DVD名称:");
String enName = input.next();
for (int i=0;i<7;i++) {
if (enName.equals(name[i])) {
if (state[i] == 0) {
System.out.println("《" + enName + "》已被借出!");
} else {
System.out.println("请输入借出日期:");
date[i] = input.nextInt();
state[i] = 0;
System.out.println("借出《" + enName + "》成功!");
}
break;
}else if(i==index-1){
System.out.println("没有找到匹配的信息");
}
}
}
// 归还DVD
public void ReturnDVD() {
System.out.println("请输入DVD名称:");
String enName = input.next();
System.out.println("请输入归还日期:");
int reDate = input.nextInt();
for (int i=0;i<7;i++) {
if (enName.equals(name[i])) {
if(state[i]==0) {
System.out.println("归还《" + enName + "》成功!");
System.out.println("借出日期为:" + date[i]);
System.out.println("归还日期为:" + reDate);
System.out.println("应付租金(元):" + (reDate - date[i]));
state[i] = 1;
count[i]++;
break;
}else {
System.out.println("未借出,不能归还!");
}
break;
}else if(i==index-1){
System.out.println("没有找到匹配的信息");
}
}
}
// 退出DVD
public void Exit() {
}
}



