迷你DVD租用管理系统

import java.util.*;
import java.text.*;


class DVDSet{
String[] name = new String[50]; //存储DVD名称
int[] state = new int[50]; //存储借出状态,0为已供出,1为可借
String[] date = new String[50]; //存储借出日期
}
class DVDMrg{
Scanner input = new Scanner(System.in);
//创建DVD对象
DVDSet dvd = new DVDSet();
public void initial(){
//事先初始化三张DVD
dvd.name[0] = "罗马假日";
dvd.state[0] = 0;
dvd.date[0] = "2012-07-08 05:16:53";

dvd.name[1] = "世界末日";
dvd.state[1] = 1;

dvd.name[2] = "宝莱坞三傻";
dvd.state[2] = 1;
}

//返回主菜单
public void returnMain(){
startMenu();
}
//新增DVD
public void addDVD(){
System.out.print("---> 添加\n请输入要添加的DVD:");
for (int i=0; i<dvd.name.length; i++) {
if(dvd.name[i] == null){
dvd.name[i] = input.next();
dvd.state[i] = 1;
break;
}
}
System.out.print("0返回主菜单,1继续添加:");
int button = input.nextInt();
if (button == 0) {
returnMain();
}
else if (button == 1) {
addDVD();
}
}
//查看DVD
public void showDVD(){
System.out.println("\n---> 查看\n\t\t***** DVD 信 息 如 下 :*****\n");
System.out.println("编号\tDVD名称\t\t\t"+"状态\t\t"+"借出时间\n");
for (int i=0; i<dvd.name.length; i++) {
if (dvd.name[i] != null) {
System.out.print(i+1+"\t"+dvd.name[i]+"\t\t");
if (dvd.state[i]==0)
System.out.print("已借出");
else
System.out.print("可 借");
System.out.println("\t\t"+dvd.date[i]);
}
}
System.out.print("按0返回主菜单:");
int button = input.nextInt();
if (button == 0) {
returnMain();
}
}
//删除DVD
public void delDVD(){
System.out.print("---> 删除\n请输入要删除的DVD名称:");
String delDVD = input.next();
for (int i=0; i<dvd.name.length; i++) {
if (dvd.name[i]!=null && dvd.state[i]==1 && dvd.name[i].equalsIgnoreCase(delDVD)) {//不为空,且没借出,且存在时才能删除
dvd.name[i] = null; //删除该DVD(置空该元素)
int j = i;
while(dvd.name[j+1]!=null){ //删除后将后续元素前移一位
dvd.name[j] = dvd.name[j+1];
dvd.state[j] = dvd.state[j+1];
dvd.date[j] = dvd.date[j+1];
j++;
}
//将最后一个不为空的元素置空
dvd.name[j] = null;
dvd.date[j] = null;
System.out.println("删除《"+delDVD+"》成功!");
break;
}
else if (dvd.name[i]==null && dvd.state[i]==0) { //名称为空,且状态为0,删除失败
System.out.println("DVD《"+delDVD+"》为借出状态,或者不存在!");
break;
}
}
System.out.print("按0返回主菜单:");
int button = input.nextInt();
if (button == 0) {
returnMain();
}
}
//借出DVD
public void lendDVD(){
System.out.print("---> 借出\n输入借出的DVD编号:"); //删除时用的是匹配名称,这里换成编号
int dvdNum = input.nextInt()-1; //编号为1的DVD元素下标为0,所以这里-1

if (dvd.name[dvdNum]==null) { //不存在
System.out.println("没有找到匹配信息!");
}
else if (dvd.name[dvdNum]!=null && dvd.state[dvdNum]==0) { //存在且为借出状态
System.out.println("《"+dvd.name[dvdNum]+"》已被借出!");
}
else if (dvd.name[dvdNum]!=null && dvd.state[dvdNum]==1) { //存在且为可借状态
dvd.state[dvdNum] = 0; //DVD状态改为0,表示借出(措出第n张的元素为第n-1张)
SimpleDateFormat dt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date now = new Date();
dvd.date[dvdNum] = dt.format(now);
System.out.println("《"+dvd.name[dvdNum]+"》借出成功,借出日期为:"+dvd.date[dvdNum]);
}
System.out.print("按0返回主菜单:");
int button = input.nextInt();
if (button == 0) {
returnMain();
}
}
//归还DVD
public void returnDVD(){
//没写了
}
public void startMenu(){
System.out.println("欢迎使用迷你DVD管理系统");
System.out.println("-----------------------------");
System.out.println("1. 新增DVD");
System.out.println("2. 查看DVD");
System.out.println("3. 删除DVD");
System.out.println("4. 借出DVD");
System.out.println("5. 归还DVD");
System.out.println("6. 退 出");
System.out.print("请选择:");

switch(input.nextInt()){
case 1: addDVD();
break;
case 2: showDVD();
break;
case 3: delDVD();
break;
case 4: lendDVD();
break;
case 5: returnDVD();
break;
case 6: //退出;
break;
}
}
}
public class Dm{
public static void main(String[] args){
DVDMrg test = new DVDMrg();
test.initial(); //事先初始化三张DVD信息
test.startMenu();
}
}

欢迎使用迷你DVD管理系统

-----------------------------
1. 新增DVD
2. 查看DVD
3. 删除DVD
4. 借出DVD
5. 归还DVD
6. 退 出
请选择:1
---> 添加
请输入要添加的DVD:苍井空全集
0返回主菜单,1继续添加:0
欢迎使用迷你DVD管理系统
-----------------------------
1. 新增DVD
2. 查看DVD
3. 删除DVD
4. 借出DVD
5. 归还DVD
6. 退 出
请选择:2

---> 查看
***** DVD 信 息 如 下 :*****

编号 DVD名称 状态 借出时间

1 罗马假日 已借出 2012-07-08 05:16:53
2 世界末日 可 借 null
3 宝莱坞三傻 可 借 null
4 苍井空全集 可 借 null
按0返回主菜单:0
欢迎使用迷你DVD管理系统
-----------------------------
1. 新增DVD
2. 查看DVD
3. 删除DVD
4. 借出DVD
5. 归还DVD
6. 退 出
请选择:3
---> 删除
请输入要删除的DVD名称:世界末日
删除《世界末日》成功!
按0返回主菜单:0
欢迎使用迷你DVD管理系统
-----------------------------
1. 新增DVD
2. 查看DVD
3. 删除DVD
4. 借出DVD
5. 归还DVD
6. 退 出
请选择:4
---> 借出
输入借出的DVD编号:3
《苍井空全集》借出成功,借出日期为:2013-05-16 15:52:36
按0返回主菜单:0
欢迎使用迷你DVD管理系统
-----------------------------
1. 新增DVD
2. 查看DVD
3. 删除DVD
4. 借出DVD
5. 归还DVD
6. 退 出
请选择:2

---> 查看
***** DVD 信 息 如 下 :*****

编号 DVD名称 状态 借出时间

1 罗马假日 已借出 2012-07-08 05:16:53
2 宝莱坞三傻 可 借 null
3 苍井空全集 已借出 2013-05-16 15:52:36

------------------------------------------------*/

归还功能没写了...跟借出功能差不多。将状态state 改为1就成了!
事先初始三级DVD也可以采用构造方法实现

import java.util.*;
import java.text.*;


class DVDSet{
String[] name = new String[50]; //存储DVD名称
int[] state = new int[50]; //存储借出状态,0为已供出,1为可借
String[] date = new String[50]; //存储借出日期
//构造方法初始化三张DVD
public DVDSet(){

name[0] = "罗马假日";
state[0] = 0;
date[0] = "2012-07-08 05:16:53";

name[1] = "世界末日";
state[1] = 1;

name[2] = "宝莱坞三傻";
state[2] = 1;
}

}
class DVDMrg{
Scanner input = new Scanner(System.in);
//创建DVD对象
DVDSet dvd = new DVDSet();

//返回主菜单
public void returnMain(){
startMenu();
}
//新增DVD
public void addDVD(){
System.out.print("---> 添加\n请输入要添加的DVD:");
for (int i=0; i<dvd.name.length; i++) {
if(dvd.name[i] == null){
dvd.name[i] = input.next();
dvd.state[i] = 1;
break;
}
}
System.out.print("0返回主菜单,1继续添加:");
int button = input.nextInt();
if (button == 0) {
returnMain();
}
else if (button == 1) {
addDVD();
}
}
//查看DVD
public void showDVD(){
System.out.println("\n---> 查看\n\t\t***** DVD 信 息 如 下 :*****\n");
System.out.println("编号\tDVD名称\t\t\t"+"状态\t\t"+"借出时间\n");
for (int i=0; i<dvd.name.length; i++) {
if (dvd.name[i] != null) {
System.out.print(i+1+"\t"+dvd.name[i]+"\t\t");
if (dvd.state[i]==0)
System.out.print("已借出");
else
System.out.print("可 借");
System.out.println("\t\t"+dvd.date[i]);
}
}
System.out.print("按0返回主菜单:");
int button = input.nextInt();
if (button == 0) {
returnMain();
}
}
//删除DVD
public void delDVD(){
System.out.print("---> 删除\n请输入要删除的DVD名称:");
String delDVD = input.next();
for (int i=0; i<dvd.name.length; i++) {
if (dvd.name[i]!=null && dvd.state[i]==1 && dvd.name[i].equalsIgnoreCase(delDVD)) {//不为空,且没借出,且存在时才能删除
dvd.name[i] = null; //删除该DVD(置空该元素)
int j = i;
while(dvd.name[j+1]!=null){ //删除后将后续元素前移一位
dvd.name[j] = dvd.name[j+1];
dvd.state[j] = dvd.state[j+1];
dvd.date[j] = dvd.date[j+1];
j++;
}
//将最后一个不为空的元素置空
dvd.name[j] = null;
dvd.date[j] = null;
System.out.println("删除《"+delDVD+"》成功!");
break;
}
else if (dvd.name[i]==null && dvd.state[i]==0) { //名称为空,且状态为0,删除失败
System.out.println("DVD《"+delDVD+"》为借出状态,或者不存在!");
break;
}
}
System.out.print("按0返回主菜单:");
int button = input.nextInt();
if (button == 0) {
returnMain();
}
}
//借出DVD
public void lendDVD(){
System.out.print("---> 借出\n输入借出的DVD编号:"); //删除时用的是匹配名称,这里换成编号
int dvdNum = input.nextInt()-1; //编号为1的DVD元素下标为0,所以这里-1

if (dvd.name[dvdNum]==null) { //不存在
System.out.println("没有找到匹配信息!");
}
else if (dvd.name[dvdNum]!=null && dvd.state[dvdNum]==0) { //存在且为借出状态
System.out.println("《"+dvd.name[dvdNum]+"》已被借出!");
}
else if (dvd.name[dvdNum]!=null && dvd.state[dvdNum]==1) { //存在且为可借状态
dvd.state[dvdNum] = 0; //DVD状态改为0,表示借出(措出第n张的元素为第n-1张)
SimpleDateFormat dt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date now = new Date();
dvd.date[dvdNum] = dt.format(now);
System.out.println("《"+dvd.name[dvdNum]+"》借出成功,借出日期为:"+dvd.date[dvdNum]);
}
System.out.print("按0返回主菜单:");
int button = input.nextInt();
if (button == 0) {
returnMain();
}
}
//归还DVD
public void returnDVD(){
SimpleDateFormat dt = new SimpleDateFormat("yyyy-MM-dd");
Date now = new Date();
System.out.println(dt.format(now));
}
public void startMenu(){
System.out.println("欢迎使用迷你DVD管理系统");
System.out.println("-----------------------------");
System.out.println("1. 新增DVD");
System.out.println("2. 查看DVD");
System.out.println("3. 删除DVD");
System.out.println("4. 借出DVD");
System.out.println("5. 归还DVD");
System.out.println("6. 退 出");
System.out.print("请选择:");

switch(input.nextInt()){
case 1: addDVD();
break;
case 2: showDVD();
break;
case 3: delDVD();
break;
case 4: lendDVD();
break;
case 5: returnDVD();
break;
case 6: //退出;
break;
}
}
}
public class Dm{
public static void main(String[] args){
DVDMrg test = new DVDMrg();
test.startMenu();
}
}


  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值