综合练习-迷你DVD管理器

题目要求:

为某音像店开发一个迷你DVD管理器,实现DVD碟片的管理,包括如下功能: 新增DVD 查看DVD 删除DVD 借出DVD 归还DVD 退出DVD


提示:以下是本篇文章正文内容,下面案例可供参考

一、代码部分

代码如下(示例):

import java.util.Scanner;

public class DVDMgr {
    String[] name = new String[7]; //存储DVD名称
    String[] state = new String[7]; //存储DVD借出状态:0已借出/1可借
    int[] date = new int[7]; //存储DVD借出日期
    int[] count = new int[7]; //存储DVD借出次数
    int num = 0; //DVD数量

    public void operatorDVD(int n) {
        Scanner input = new Scanner(System.in);
        switch (n) {
            case 1:
                System.out.println("添加的DVD不能超过6张");
                System.out.println("----->新增DVD");
                System.out.println();
                String y = "y";
                do {
                    if (num< 6) {
                        System.out.println("请输入新增DVD的名称:");
                        String name = input.next();
                        System.out.println("请输入新增DVD的借出状态(0已借出/1可借):");
                        int state = input.nextInt();
                        System.out.println("请输入新增DVD的借出日期:");
                        int date = input.nextInt();
                        System.out.println("请输入新增DVD的借出次数:");
                        int count = input.nextInt();
                        for (int i = num; i < num + 1; ) {
                            this.name[i] = name;
                            if (state == 0) {
                                this.state[i] = "已借出";
                            } else if (state == 1) {
                                this.state[i] = "可借";
                            } else {
                                this.state[i] = "借出状态异常";
                            }
                            this.date[i] = date;
                            this.count[i] = count;
                            System.out.println("新增<<"+name+">>成功");
                            System.out.println("是否继续添加DVD(y/n):");
                            y = input.next();
                            num++;
                            break;
                        }
                    } else {
                        System.out.println("增加的的DVD数量超出最大添加数量6!!!");
                        break;
                    }

                } while (y.equals("y"));
                break;
            case 2:
                System.out.println("----->查看DVD");
                System.out.println();
                System.out.println("序号\t\t" + "DVD名称\t\t" + "DVD借出状态\t\t" + "DVD借出日期\t\t" + "DVD借出次数");
                for (int i = 0; i < num; i++) {
                    System.out.println(i + 1 + "\t" + " " + "<<" + name[i] + ">>" + "\t" + "\t" + " " + state[i] + "\t" + "\t" + "\t" + "\t" + date[i] + "日" + "\t" + "\t" + "\t" + count[i] + "次");
                }
                break;
            case 3:
                System.out.println("----->删除DVD");
                System.out.println();
                System.out.println("请输入要删除的DVD序号:");
                int id1 = input.nextInt();
                if (id1 > num) {
                    System.out.println("没有这本书!!!");
                    return;
                }
                else if (state[id1 - 1].equals("已借出")) {
                    System.out.println("第" + id1 + "本书为借出状态,不可删除!!!");
                    return;
                }
                for (int j = id1 - 1; j < num; j++) {
                      if (j == num - 1) {
                        name[j] = null;
                        state[j] = "";
                        date[j] = 0;
                        count[j] = 0;
                        num--;
                    } else {
                        name[j] = name[j + 1];
                        state[j] = state[j + 1];
                        date[j] = date[j + 1];
                        count[j] = count[j + 1];
                    }
                }
                System.out.println("成功删除第" + id1 + "本书:");
                break;
            case 4:
                System.out.println("----->借出DVD");
                System.out.println();
                System.out.println("请输入要借出的书本编号:");
                int id2 = input.nextInt();
                if (id2 > num) {
                    System.out.println("没有这本书!!!");
                    return;
                }
                else if (state[id2 - 1] == "已借出") {
                    System.out.println("该书已经被借出");
                } else {
                    System.out.println("请输入借出日期:");
                    int counts = input.nextInt();
                    state[id2 - 1] = "已借出";
                    date[id2 - 1] = counts;
                    count[id2 - 1]++;
                    System.out.println("成功借出第" + id2 + "本书"+"<<"+name[id2-1]+">>");
                }
                break;
            case 5:
                System.out.println("----->归还DVD");
                System.out.println();
                System.out.println("请输入要归还的书本编号:");
                int id3 = input.nextInt();
                if (id3 > num) {
                    System.out.println("没有这本书!!!");
                    return;
                }
                else if (state[id3 - 1] == "可借") {
                    System.out.println("该书还未被借出");
                } else {
                    System.out.println("借书日期为:"+date[id3 - 1]+"日");
                    System.out.println("应付租金:" + date[id3 - 1] * 3);
                    state[id3 - 1] = "可借";
                    date[id3 - 1] = 0;
                    System.out.println("成功归还第" + id3 + "本书"+"<<"+name[id3-1]+">>");
                }
                break;
            case 6:
                System.out.println("退出成功!!!");
                System.exit(0);
            default:
                System.out.println("输入的功能序号有误,请重新输入!");
        }
    }


    public static void main(String[] args) {
        int a = 0;
        DVDMgr dvd = new DVDMgr();
        do {
            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.  退出DVD");
            System.out.println("---------------------------------------------------");
            System.out.print("请选择:");
            Scanner input = new Scanner(System.in);
            int n = input.nextInt();
            dvd.operatorDVD(n);
            System.out.print("请输入0返回:");
            a = input.nextInt();
        } while (a == 0);
    }
}

二、运行截图: