zoukankan      html  css  js  c++  java
  • JAVA基础代码分享--DVD管理

    问题描述

    为某音像店开发一个迷你DVD管理器,最多可存6DVD,实现碟片的管理。

    管理器具备的功能主要有:

      1、查看DVD信息。

      菜单选择查看功能,展示DVD的信息。

     

      2、新增DVD信息

     

      选择新增功能,根据提示输入新增的DVD名称,添加到库存,如果DVD货架已满,即达到6张,则提示增加失败。

      3、删除DVD信息

      执行删除命令,输入要删除的DVD的名称,如果DVD为借出状态,不允许删除。如果没有该DVD信息,则提示“没有找到匹配信息”;

      4、借出DVD

      如果该DVD已经被借出,则系统提示“XX已经被借出”。如果没有找到该DVD信息,则系统提示“没有找到匹配信息!”。而且一个月默认为31天,如果输入的借出日期为大于31的数字,则系统给出提示“必须输入大于等于 1且小于等于31的数字,请重新输入”。

      5、归还DVD

      计算租金,11元。如果归还的DVD未被借出,则系统提示“该DVD没有被借出,无法进行归还操作。如果归还的DVD与列表中的DVD不匹配,则系统提示“没有找到匹配信息”。,如果归还时间小于借出时间,或者是大于31的数字,则系统分别提示“归还日期不能小于借出日期,请重新输入,和一个月只有31天,请重新输入。”

      6、当用户执行退出命令时,结束本程序。

    代码分享

    public class ManagerDVD {
        private static String [][] dvdstr = new String[6][5];
        private static int n = 0;//用户输入的操作命令
        private static Scanner in;//数字输入
        private static Scanner input;//汉字输入
        private static String name = null;//DVD名字
        
        public static void main(String[] args) {
            System.out.println("--------------------欢迎使用DVD管理系统--------------------");
            System.out.println("系统的操作命令:
    1、添加DVD
    2、删除DVD
    3、查看DVD
    4、借出DVD
    5、归还DVD
    0、注销退出");
            in = new Scanner(System.in);
            for(int i=0; i<6; i++){
                dvdstr[i][0] = ""+(i+1);
                dvdstr[i][4] = "0";
            }
            do {
                System.out.print("请输入操作命令:");
                n = in.nextInt();
                if(n!=0){
                    setManager(n);
                }
            } while (n!=0);
        }
    
        private static void setManager(int n) {
            switch (n) {
            case 1:
                System.out.println("添加DVD");
                if(dvdstr[5][2]!=null){
                    System.out.println("DVD库存已满,无法添加");
                    break;
                }
                System.out.print("请输入DVD名字:");
                input = new Scanner(System.in);
                name = input.nextLine();
                boolean boo = true;
                for(int i=0; i<6; i++){
                    if(dvdstr[i][2]!=null&&name.equals(dvdstr[i][2])){
                        boo = false;
                        break;
                    }
                }
                if(boo){
                    for(int i=0; i<6; i++){
                        if(dvdstr[i][2]==null){
                            dvdstr[i][1] = "未借出";
                            dvdstr[i][2] = name;
                            System.out.println("添加操作完成");
                            break;
                        }
                    }
                }else{
                    System.out.println("该DVD已存在");
                }
                break;
            case 2:
                System.out.println("删除DVD");
                if(dvdstr[0][2]==null){
                    System.out.println("库存还没有DVD,无法进行删除操作");
                    break;
                }
                System.out.print("请输入DVD名字:");
                input = new Scanner(System.in);
                name = input.nextLine();
                boolean bo = false;
                for(int i=0; i<6; i++){
                    if(dvdstr[i][2]!=null&&name.equals(dvdstr[i][2])){
                        for(int j=i; j<5; j++){
                            dvdstr[j][1] = dvdstr[j+1][1];
                            dvdstr[j][2] = dvdstr[j+1][2];
                            dvdstr[j][3] = dvdstr[j+1][3];
                            dvdstr[j][4] = dvdstr[j+1][4];
                        }
                        dvdstr[5][1] = null;
                        dvdstr[5][2] = null;
                        dvdstr[5][3] = null;
                        dvdstr[5][4] = null;
                        bo = true;
                        break;
                    }
                }
                if(bo){
                    System.out.println("删除操作成功");
                }else{
                    System.out.println("未找到该商品");
                }
                break;
            case 3:
                System.out.println("查看DVD");
                System.out.println("序号	状态	名称		借出日期	借出次数");
                for(int i=0; i<6; i++){
                    if(dvdstr[i][2]==null){
                        break;
                    }
                    System.out.println(dvdstr[i][0]+"	"+dvdstr[i][1]+"	"+dvdstr[i][2]+"		"+dvdstr[i][3]+"	"+dvdstr[i][4]);
                }
                break;
            case 4:
                System.out.println("借出DVD");
                if(dvdstr[0][2]==null){
                    System.out.println("库存还没有DVD,无法进行借出操作");
                    break;
                }
                System.out.print("请输入DVD的名字:");
                name = input.nextLine();
                boolean b = false;
                for(int i=0; i<6; i++){
                    if(dvdstr[i][2]!=null&&name.equals(dvdstr[i][2])){
                        if("未借出".equals(dvdstr[i][1])) {
                            System.out.print("请输入借出日期:");
                            int date = 0;
                            do {
                                date = in.nextInt();
                            } while (date>31&&date<=0);
                            dvdstr[i][1] = "已借出";
                            dvdstr[i][3] = ""+date;
                            dvdstr[i][4] = ""+(Integer.parseInt(dvdstr[i][4])+1);
                            System.out.println("借出操作完成");
                        }else{
                            System.out.println("该DVD已被借出");
                        }
                        b = true;
                        break;
                    }
                }
                if(!b){
                    System.out.println("该DVD不存在");
                }
                break;
            case 5:
                System.out.println("归还DVD");
                if(dvdstr[0][2]==null){
                    System.out.println("库存还没有DVD,无法进行归还操作");
                    break;
                }
                System.out.print("请输入DVD的名字:");
                name = input.nextLine();
                boolean flag = false;
                for(int i=0; i<6; i++){
                    if(dvdstr[i][2]!=null&&name.equals(dvdstr[i][2])){
                        if("已借出".equals(dvdstr[i][1])) {
                            System.out.print("请输入归还日期:");
                            int date = 0;
                            int lend = Integer.parseInt(dvdstr[i][3]);
                            do {
                                date = in.nextInt();
                            } while (date>31&&date<=0&&date>=lend);
                            dvdstr[i][1] = "未借出";
                            dvdstr[i][3] = null;
                            System.out.println("归还操作完成");
                            System.out.println("借出日期:"+lend);
                            System.out.println("归还日期:"+date);
                            System.out.println("您一共需要支付租金:"+((date-lend)*5)+"元");
                        }else{
                            System.out.println("该DVD已被借出");
                        }
                        flag = true;
                        break;
                    }
                }
                if(!flag){
                    System.out.println("该DVD不存在");
                }
                break;
    
            default:
                System.out.println("您输入的命令不合法!");
                break;
            }
        }
    
    }
  • 相关阅读:
    使用 DataAdapter 执行批量更新 [摘自MSDN]
    深入浅出net泛型编程
    模版页中引用文件路径的问题
    查询SQLSERVER某个表所占用空间大小的SQL语句
    如何获取SQL Server数据库里表的占用容量大小的存储过程
    确定计算机是否可以运行 Windows Vista? 操作系统
    SQL语句 [转]
    SQLServer中如何将一个字段的多个记录值合在一行显示
    ASP.net在页面所有内容生成后、输出内容前对页面内容进行操作
    oracle 删除用于及其表空间
  • 原文地址:https://www.cnblogs.com/AndroidJotting/p/5000118.html
Copyright © 2011-2022 走看看