• DVD管理系统


      1 package 作业;
      2 
      3 import java.text.DateFormat;
      4 import java.text.SimpleDateFormat;
      5 import java.util.ArrayList;
      6 import java.util.Date;
      7 import java.util.Iterator;
      8 import java.util.Scanner;
      9 
     10 import com.sun.org.apache.xerces.internal.impl.xpath.regex.ParseException;
     11 
     12 
     13 public class DVD管理器 {
     14     
     15     static ArrayList<Object> arr = new ArrayList<>();
     16     static Scanner sc = new Scanner(System.in);
     17 
     18     public static void main(String[] args) throws java.text.ParseException {
     19         Dvd dvd0 = new Dvd(0,"罗马假日","已借出","2016-11-12");
     20         Dvd dvd1 = new Dvd(1,"风声鹤唳","可借","");
     21         Dvd dvd2 = new Dvd(2,"浪漫满屋","可借","");
     22         arr.add(dvd0);
     23         arr.add(dvd1);
     24         arr.add(dvd2);
     25         boolean backtrack = true;
     26         while(backtrack){
     27               String[] content = {"1.新增DVD","2.查看DVD","3.删除DVD","4.借出DVD","5.归还DVD","6.退出DVD"};
     28               System.out.println("
    欢迎使用迷你DVD管理器");
     29               System.out.println("------------------------------------");
     30               for(String i:content)
     31                   System.out.println(i);
     32               System.out.println("------------------------------------");
     33               System.out.print("请选择: ");
     34               int number = sc.nextInt();
     35               switch (number){
     36                   case 1:System.out.println("---> 新增DVD");newly();break;
     37                   case 2:System.out.println("---> 查看DVD");examine();break;
     38                   case 3:System.out.println("---> 删除DVD");delete();break;
     39                   case 4:System.out.println("---> 借出DVD");loan();break;
     40                   case 5:System.out.println("---> 归还DVD");rerutn();break;
     41                   case 6:backtrack = quit();break;
     42                   default:break;
     43               }
     44            }
     45          System.out.println("谢谢使用!
    ");
     46      }
     47     
     48     //新增
     49     public static void newly(){
     50          System.out.print("请输入DVD名称: ");
     51          String name = sc.next();
     52          Dvd dvd = new Dvd(arr.size(),name,"可借","");
     53          arr.add(dvd);
     54          System.out.println("添加成功");
     55     }
     56     
     57     //查看
     58     public static void examine(){
     59         System.out.println("序号"+"	"+"名称"+"		"+"状态"+"	"+"日期");
     60         Iterator<Object> it = arr.iterator();
     61         while(it.hasNext()){
     62             System.out.println(it.next());
     63         }
     64     }
     65     
     66     //删除
     67     public static void delete(){
     68           System.out.print("请输入DVD序号(number): ");
     69           int temp = sc.nextInt();
     70           if(temp < 0 || temp > arr.size()-1){
     71               System.out.print("没有该DVD序号,请重新输入 ");
     72           }else{
     73               arr.remove(temp);
     74           }
     75     }
     76     
     77     //借出
     78     public static void loan(){
     79         System.out.print("请输入借出DVD序号(number): ");
     80         int temp = sc.nextInt();
     81         if(temp < 0 || temp > arr.size()-1){
     82             System.out.print("没有该DVD序号,请重新输入 ");
     83         }else {
     84               Dvd dvd = (Dvd)arr.get(temp);
     85               if(dvd.status.equals("已借出")){
     86                   System.out.println("该书已经被借出,不可再借!");
     87               }else{
     88               //获取系统当前日期
     89                 Date date = new Date();
     90                 DateFormat df = DateFormat.getDateInstance();
     91                 String day = df.format(date);
     92                 dvd.status = "已借出";
     93                 dvd.date = day;
     94                 arr.set(temp, dvd);
     95                 System.out.println("借出成功!");
     96               }
     97         }
     98     }
     99     
    100     //归还
    101     public static void rerutn() {
    102         System.out.print("请输入归还的DVD序号: ");
    103         int temp = sc.nextInt();
    104         if(temp < 0 || temp > arr.size()-1){
    105             System.out.print("没有该DVD序号,请重新输入 ");
    106         }else {
    107               Dvd dvd = (Dvd)arr.get(temp);
    108               if(dvd.status.equals("已借出")){
    109               //获取系统当前日期
    110                 Date date = new Date();
    111                 DateFormat df = DateFormat.getDateInstance();
    112                 String day = df.format(date);
    113                 dvd.status = "可借";
    114                 arr.set(temp, dvd);
    115                 System.out.println("借出日期为: "+dvd.date);
    116                 System.out.println("归还日期为: "+day);               
    117                 
    118                 //计算租金
    119                 DateFormat sd = new SimpleDateFormat("yyyy-MM-dd");
    120                 long money = 0;     
    121               
    122                 try{
    123                      Date d3 = sd.parse(day);
    124                      Date d2 = sd.parse(dvd.date);
    125                      money = (d3.getTime()-d2.getTime())/(24*60*60*1000);
    126                 }catch (Exception e) {
    127                     e.printStackTrace();
    128                 }                              
    129                
    130                 
    131                 System.out.println("应付租金(元): "+money);
    132                 System.out.println("归还成功!");
    133               }else{
    134             System.out.println("该书未被借出,不需归还!");
    135               }
    136             } 
    137     }
    138     
    139     //退出
    140     public static boolean quit(){
    141         return false;
    142     }
    143 }
    144 
    145 
    146 class Dvd{
    147     int id;
    148     String name;
    149     String status;
    150     String date;
    151     public Dvd(int id,String name,String status,String date){
    152         this.id = id;
    153         this.name = name;
    154         this.status = status;
    155         this.date = date;
    156     }
    157     @Override
    158     public String toString() {
    159         return this.id+"	"+this.name+"	"+"	"+this.status+"	"+this.date;
    160     }
    161 }
  • 相关阅读:
    Apache Flink 1.12.1发布
    flink 修改web页面刷新时间
    flink 支持的sql 方言
    flink sql 读取hive 表报错
    Typora配置正文、目录、侧边大纲中的标题自动编号
    滴滴开源Logi-KafkaManager 一站式Kafka监控与管控平台
    建立 nfs 服务器
    Linux 设备驱动的第一个例子 。
    备份.vimrc
    shell编程实例
  • 原文地址:https://www.cnblogs.com/chenrenshui/p/6075426.html
Copyright © 2020-2023  润新知