• 一个小的dvd管理器


    import java.util.*;

    //日期要导入的
    import java.text.*;

    //放数据用的
    class DVDSet
    {
        static String[] name=new String[50];
        static    int[] state=new int[50];
        static String[] date=new String[50];
        static int[] count=new int[50];

    }

    class DVDMgr
    {
        DVDSet dvd =new DVDSet();
        public void initial(){
        dvd.name[0]="罗马假日";
        dvd.state[0]=0;
        dvd.count[0]=1;
        dvd.date[0]="2012-2-1";
        dvd.name[1]="风声鹤唳";
        dvd.state[1]=1;
        dvd.count[1]=20;
        dvd.name[2]="浪漫满屋";
        dvd.state[2]=1;
        dvd.count[2]=30;
        
        }

         public void startMenu(){
        
          System.out.println("欢迎使用迷你DVD 管理器");
          System.out.println("*******************************");
              System.out.println("0.借书排行榜");
              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("*******************************");
           System.out.print("请输入一个数字:      ");
           Scanner sca = new Scanner(System.in);
           
           int choice = sca.nextInt();
            
        //判断你要输出的数字选择合适方法
         switch(choice){
        case 0:
        System.out.println("借书排行榜");
        System.out.println("   ");
        ranKing();
        System.out.println("*******************************");           
        returnMain();   
        break;
         case 1:
        System.out.println("此处实现新增DVD");
        System.out.println("   ");
        add();
        System.out.println("*******************************");           
        returnMain();   
        break;
        case 2:
        System.out.println("--> 查看DVD");
        System.out.println("   ");
          search();
        System.out.println("*******************************");           
        returnMain();   
        break;
        case 3:
        System.out.println("--> 删除DVD");
        System.out.println("   ");
          delete();
        System.out.println("*******************************");           
        returnMain();   
        break;
        case 4:
        System.out.println("--> 借出DVD");
        System.out.println("   ");
          lend();
        System.out.println("*******************************");           
        returnMain();   
        break;
        case 5:
        System.out.println("--> 归还DVD");
        System.out.println("   ");
          returnDvd();
        System.out.println("*******************************");           
        returnMain();   
        break;
        case 6:
        System.out.println("   ");
        System.out.println("谢谢使用");
        
        System.out.println("*******************************");           
        break;
        default:
          System.out.println("输入错误,异常终止!");
        break;
        
           }
        

       }
       //返回方法
       public void returnMain(){
             Scanner input = new Scanner(System.in);
             System.out.print("输入0返回        ");

             if(input.nextInt()==0){
                   startMenu();
             }
           else{
                  System.out.println("输入错误,异常终止!");
              }
            
         }
        //查看数组方法
         public void search(){
              for (int i= 0;i<dvd.name.length ;i++ )
              {
                  if (dvd.name[i]==null)
                  {

                      break;
                  }else if (dvd.state[i]==0)
                  {
                      System.out.println((i+1)+" 已借出 "+"<<"+dvd.name[i]+">> "+dvd.date[i]);

                  }else if (dvd.state[i]==1)
                  {

                        System.out.println((i+1)+" 可借 "+"<<"+dvd.name[i]+">>");
                  }
              }
            
        
         }
         //添加方法
         public void add(){
             System.out.print("请输入DVD名称: ");
              
                 
             for (int i= 0;i<dvd.name.length ;i++ )
              {
                  if (dvd.name[i]==null)
                  {      
                      Scanner sca1 = new Scanner(System.in);
                      String str=sca1.nextLine();
                         dvd.name[i]=str;
                         dvd.state[i]=1;
                         dvd.date[i]=" ";
                         System.out.println("新增《"+str+"》成功");
                         break;
                    
                  }
              }
         }
       //删除方法
       public void delete(){
            System.out.print("请输入DVD名称: ");
               Scanner sca1 = new Scanner(System.in);
                String str=sca1.nextLine();
                 
             for (int i= 0;i<dvd.name.length ;i++ )
              {
                  if (dvd.name[i]!=null&&dvd.name[i].equalsIgnoreCase(str)&&dvd.state[i]==1)
                  {      
                    
                          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.state[j]=null;
                              dvd.date[j]=null;
                              System.out.println("删除《"+str+"》成功!");
                               break;
                  }else if (dvd.name[i]!=null&&dvd.name[i].equalsIgnoreCase(str)&&dvd.state[i]==0)
                  {
                       System.out.println("《"+str+"》为借出状态,不能删除!");
                        break;


                  }
              }
       
       }
       //借出操作
         public void lend(){
             System.out.print("输入要借的书  ");
             Scanner sca2 = new Scanner(System.in);
                  String str=sca2.nextLine();
            
              for (int i= 0;i<dvd.name.length ;i++ )
              {
                  
                  if (dvd.name[i]==null)
                  {
                       System.out.println("没有找到匹配信息!");

                      break;
                  }else if (dvd.name[i].equals(str)&& dvd.state[i]==1)
                  {
                      dvd.state[i]=0;
                      dvd.count[i]=dvd.count[i]+1;
                       System.out.print("请输入借出日期(年-月-日):");
                       Scanner sca3 = new Scanner(System.in);
                  String str2=sca3.nextLine();
                       dvd.date[i]=str2;
                         System.out.println("借出《"+str+"》成功!");
                           break;


                  }else if (dvd.name[i].equals(str)&& dvd.state[i]==0)
                  {

                       System.out.println("《"+str+"》已被借出!");
                               break;

                  }
              }
            
        
         }
         //归还操作
          public void returnDvd(){
              System.out.print("输入要归还的书  ");
             Scanner sca4 = new Scanner(System.in);
                  String str=sca4.nextLine();
            
              for (int i= 0;i<dvd.name.length ;i++ )
              {
                  
                  if (dvd.name[i]==null)
                  {
                      System.out.println("没找到这本书");
                      break;
                  }else if (dvd.name[i].equals(str))
                  {
                      dvd.state[i]=1;
                       System.out.print("请输入归回的日期(年-月-日):");
                       Scanner sca5 = new Scanner(System.in);
                       String str2=sca5.nextLine();
                       //定义格式
                       SimpleDateFormat ri=new SimpleDateFormat("yyyy-MM-dd");
                       //把字符串转成可以计算的日期
                       
                       long charge;

                       //日期的转换和计算要系在这个方法里面
                      try{
                       Date riqi = ri.parse(str2);
                       Date riqi1 = ri.parse(dvd.date[i]);
                       charge=(riqi.getTime()-riqi1.getTime())/(24*60*60*1000);
                        
                         System.out.println("归还书《"+str+"》成功!收入"+charge+"元");
                      }catch (ParseException e) {
                                   e.printStackTrace();

                           }
                        break;

                  }
              }
            
        
         }
    //查看排行榜
           public void ranKing(){
           
                String[] name1=new String[50];
               int[] count1=new int[50];
               for (int i=0;i<dvd.name.length ;i++ )
               {
                     
                    if (dvd.name[i]==null)
                    {
                       break;
                    }
                     name1[i]=dvd.name[i];
                     count1[i]=dvd.count[i];

               }

               for (int i = 0 ;i<dvd.name.length-1 ;i++ )
               {
                   for (int j=0;j<dvd.name.length-1-i ;j++ )
                   {
                      if (name1[j]==null)
                    {
                       break;
                    } else if (count1[j]<count1[j+1])
                       {
                           int tem = count1[j];
                           count1[j]= count1[j+1];
                           count1[j+1]=tem;

                           String tem1 = name1[j];
                           name1[j]=name1[j+1];
                          name1[j+1]=tem1;
                       }
                   }
               }
           
           
           for (int i=0;i<dvd.name.length ;i++ )
               {
                    if (name1[i]==null)
                    {
                       break;
                    }else{
               System.out.println(count1[i]+ " "+ name1[i]);
                    }

               }
           }
         


    }







    class  Work6
    {
        public static void main(String[] args)
        {
            DVDMgr dm = new DVDMgr();
            dm.initial();
            dm.startMenu();
        }
    }

  • 相关阅读:
    csp-s 92
    支持smtp/imap smtp/pop3的撞库python撞库脚本
    关于KB2839299 微软补丁前后的kifastcallentry
    (转载)RegSetValueEx设置REG_SZ类型键值时要注意的问题
    x64windows安全机制进程_线程_模块加载回调摘要
    windbg脚本实践3----监控特定进程创建
    windbg脚本实践2----监控特定注册表键值创建和删除
    windbg脚本实践1----监控特定文件创建 删除 读写
    纪念在乙方安全公司的2年_关于杀毒软件和远控的斗争
    文件删除的windows下面的三种路径(轻量级)
  • 原文地址:https://www.cnblogs.com/zzzhangzheng/p/6077151.html
Copyright © 2020-2023  润新知