基于java的迷你DVD管理系统(源码)

1.初始化菜单目录

public void menu() {
    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.println("7.退\t出");
    System.out.println("==================");
    System.out.println("请选择:");
    int number = input.nextInt();
    switch (number) {
        case 1:
            method01();
            break;
        case 2:
            method02();
            break;
        case 3:
            method03();
            break;
        case 4:
            method04();
            break;
        case 5:
            method05();
            break;
        case 6:
            method06();
            break;
        case 7:
            System.out.println("退出系统,感谢使用");
            System.exit(1);

    }
}

2.创建各个模块需要用到的数组

int[] nums = new int[50];
int[] count = new int[50];
String[] states = new String[50];
String[] names = new String[50];
String[] dates = new String[50];
Scanner input = new Scanner(System.in);

3.初始化系统中存在的数据

public void init() {
    nums[0] = 1;
    nums[1] = 2;
    nums[2] = 3;

    count[0]=15;
    count[1]=12;
    count[2]=11;

    states[0] = "已借出";
    states[1] = "可借";
    states[2] = "可借";

    names[0] = "罗马假日";
    names[1] = "风声鹤唳";
    names[2] = "浪漫满屋";

    dates[0] = "2010-7-1";
    dates[1] = "";
    dates[2] = "";

}

4.主程序入口

public static void main(String[] args) {
    DVD dvd=new DVD();
    dvd.init();
    dvd.menu();

}

5.添加操作

private  void method01() {
    System.out.println("-------->添加DVD");
    System.out.println("输入要添加的DVD名称");
    String newname=input.next();
    for(int i=0;i<names.length;i++){
        if(newname.equals(names[i])){
            System.out.println("该DVD已经存在,返回菜单");
        }else{
            if(names[i]==null){
                names[i]=newname;
                nums[i]=i+1;
                states[i]="可借";
                dates[i]="";
                break;
            }
        }
    }
    System.out.println("添加"+newname+"成功");
    getReture();
}

6.查看操作

private  void method02() {
    System.out.println("---------->查看DVD");
    System.out.println("序号\t状态\t名称\t借出日期");
    for(int i=0;i<names.length;i++){
        if(names[i]!=null){
            System.out.println(nums[i]+"\t"+states[i]+"\t"+names[i]+"\t"+dates[i]);
        }else{
            break;
        }
    }
    getReture();

}

7.删除操作

private  void method03() {
    System.out.println("----------->删除DVD");
    System.out.println("输入要删除的DVD名称");
    String delname=input.next();
    boolean boo=false;
    for(int i=0;i<names.length;i++){
        if(delname.equals(names[i])){
            if("可借".equals(states[i])){
                for(int j=i;j<names.length-1;j++){
                    nums[j-1]=nums[j];
                    states[j]=states[j+1];
                    names[j]=names[j+1];
                    dates[j]=dates[j+1];
                }
                System.out.println("该DVD删除成功");

            }else{
                System.out.println("该DVD已借出,不能删除");
            }
            boo=true;
        }
    }
    if(!boo){
        System.out.println("不存在该DVD");
    }
    getReture();
}

8.借出操作

private  void method04() {
    System.out.println("--------->借出DVD");
    System.out.println("输入要借出的DVD名称");
    String lentname=input.next();
    boolean boo=false;
    for(int i=0;i<names.length;i++){
        if(lentname.equals(names[i])){
            if("可借".equals(states[i])){
                states[i]="已借出";
                System.out.println("输入借出日期");
                String date=input.next();
                dates[i]=date;
                System.out.println("借出成功");
                count[i]++;

            }else{
                System.out.println("该DVD已借出");
            }
            boo=true;
        }
    }
    if(!boo){
        System.out.println("该DVD不存在");
    }
    getReture();

}

9.归还操作

private  void method05() {
    System.out.println("----------->归还DVD");
    System.out.println("输入归还的DVD名称");
    String backname=input.next();
    boolean boo=false;
    for(int i=0;i<names.length;i++){
        if(backname.equals(names[i])){
            if("不可借".equals(names[i])){
                System.out.println("输入归还日期");
                String  date2=input.next();
                System.out.println("归还成功");
                System.out.println("借出日期为:"+dates[i]);
                System.out.println("归还日期为:"+date2);
                SimpleDateFormat sdf=new SimpleDateFormat("yy-mm-dd");
                Date perse1=null;
                Date perse2=null;
                try {
                    perse1=sdf.parse(dates[i]);
                } catch (ParseException e) {
                    e.printStackTrace();
                }
                try {
                    perse2=sdf.parse(date2);
                } catch (ParseException e) {
                    e.printStackTrace();
                }
                long time1=perse1.getTime();
                long time2=perse2.getTime();
                long money =(time2-time1)/(10000*60*60*24);
                System.out.println("应付租金"+money+"元)");
                dates[i]="";
            }else{
                System.out.println("该DVD为可借状态");

            }
            boo=true;
        }
    }
    if(!boo){
        System.out.println("该DVD不存在");
    }
    getReture();
}

10.根据借出次数多少,依次排列各个DVD名称

private  void method06() {
    System.out.println("-------->排行榜");
    int max=0;
    System.out.println("名称\t次数");
    for(int i=0;i<names.length;i++){
        for(int j=i+1;j<names.length;j++) {
            if (count[i] < count[j]) {
                max = count[j];
                count[j] = count[i];
                count[i] = max;
            }
        }
        if(names[i]==null){
            break;
        }

        System.out.println(names[i]+"\t"+count[i]);
    }
    getReture();

}

  • 39
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Java迷你DVD管理器是一个基于Java语言开发DVD管理系统,可以实现DVD的增删改查等基本功能。根据提供的引用内容,可以看出该系统的主要类为DVDMgr和Menu,其中DVDMgr类负责DVD信息的初始化和管理,Menu类负责显示菜单和处理用户输入。下面是一个简单的Java迷你DVD管理器的实现示例: ```java package com.example.dvd; import java.util.ArrayList; import java.util.List; import java.util.Scanner; /** * DVD信息类 */ class DVD { private String name; // 名称 private String type; // 类型 private String date; // 出版日期 public DVD(String name, String type, String date) { this.name = name; this.type = type; this.date = date; } public String getName() { return name; } public String getType() { return type; } public String getDate() { return date; } @Override public String toString() { return "DVD{" + "name='" + name + '\'' + ", type='" + type + '\'' + ", date='" + date + '\'' + '}'; } } /** * DVD管理类 */ class DVDMgr { private List<DVD> dvdList = new ArrayList<>(); /** * 初始化DVD信息 */ public void initial() { dvdList.add(new DVD("肖申克的救赎", "剧情", "1994-09-10")); dvdList.add(new DVD("霸王别姬", "剧情", "1993-01-01")); dvdList.add(new DVD("阿甘正传", "剧情", "1994-06-23")); dvdList.add(new DVD("泰坦尼克号", "爱情", "1997-12-19")); } /** * 显示DVD列表 */ public void showList() { System.out.println("DVD列表:"); for (int i = 0; i < dvdList.size(); i++) { System.out.println((i + 1) + ". " + dvdList.get(i)); } } /** * 添加DVD */ public void addDVD() { Scanner scanner = new Scanner(System.in); System.out.print("请输入DVD名称:"); String name = scanner.nextLine(); System.out.print("请输入DVD类型:"); String type = scanner.nextLine(); System.out.print("请输入DVD出版日期(格式:yyyy-MM-dd):"); String date = scanner.nextLine(); dvdList.add(new DVD(name, type, date)); System.out.println("添加成功!"); } /** * 删除DVD */ public void deleteDVD() { Scanner scanner = new Scanner(System.in); System.out.print("请输入要删除的DVD编号:"); int index = scanner.nextInt(); if (index < 1 || index > dvdList.size()) { System.out.println("输入有误!"); return; } dvdList.remove(index - 1); System.out.println("删除成功!"); } } /** * 菜单类 */ class Menu { private static final int SHOW_LIST = 1; private static final int ADD_DVD = 2; private static final int DELETE_DVD = 3; private static final int EXIT = 4; /** * 显示菜单 */ public static void showMenu(DVDMgr mgr) { Scanner scanner = new Scanner(System.in); while (true) { System.out.println("请选择操作:"); System.out.println("1. 显示DVD列表"); System.out.println("2. 添加DVD"); System.out.println("3. 删除DVD"); System.out.println("4. 退出"); int choice = scanner.nextInt(); switch (choice) { case SHOW_LIST: mgr.showList(); break; case ADD_DVD: mgr.addDVD(); break; case DELETE_DVD: mgr.deleteDVD(); break; case EXIT: System.out.println("谢谢使用!"); return; default: System.out.println("输入有误,请重新输入!"); break; } } } } ```

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值