dvd管理系统

>>>>>>>>>>>>>>>>>>>>

语言:java

工具:eclipse

时间:2016.12.1

>>>>>>>>>>>>>>>>>>>>

一代代码:

 1 package dvdManager;
 2 /*
 3  * dvd系统
 4  * 
 5  *  * */
 6 public class dvdsystem {
 7     //全局变量:
 8     static String[][] dvd=new String[7][4];//二维数组dvd,7行(张),4个信息(属性)
 9     
10 //主函数:
11 public static void main(String[] args) {
12         /*
13          * 名字    是否借出    借出日期    借出次数
14          * 
15          */
16     //dvd爱情公寓
17     dvd[0][0]="爱情公寓";
18     dvd[0][1]="1";//1表示借出,0表示借出。
19     dvd[0][2]="2";//目前只支持当月借还。
20     dvd[0][3]="3";//借出次数:3次。
21     
22     //dvd重庆森林
23     dvd[1][0]="重庆森林";
24     dvd[1][1]="";//1表示借出,0表示借出。
25     dvd[1][2]="";//借出时间:目前只支持当月借还2号。
26     dvd[1][3]="3";//借出次数:3次。
27     
28     //dvd屌丝男士
29     dvd[2][0]="屌丝男士";
30     dvd[2][1]="1";//1表示借出,0表示借出。
31     dvd[2][2]="3";//借出时间:目前只支持当月借还3号。
32     dvd[2][3]="7";//借出次数:3次。
33     
34     System.out.println("=====dvd管理系统=====");
35     System.out.println("1.dvd新增");
36     System.out.println("2.dvd展示");
37     System.out.println("3.dvd删除");
38     System.out.println("4.dvd修改");
39     System.out.println("5.dvd借出");
40     System.out.println("6.dvd归还");
41     System.out.println("7.退出当前系统");
42     System.out.println("请输入功能编号:");
43     
44 }
45 }

 


 

>>>>>>>>>>>>>>>>>>>>

二代代码:

备注:添加菜单中的“2.dvd展示”栏目的功能。2016-12-02。

 1 package dvdManager2.copy;
 2 
 3 import java.util.Scanner;
 4 /*
 5  * dvd系统
 6  * 
 7  *  * */
 8 public class dvdsystem {
 9     //全局变量:
10     static String[][] dvd=new String[7][4];//二维数组dvd,7行(张),4个信息(属性)
11     static Scanner scan=new Scanner(System.in);
12 //主函数:
13 public static void main(String[] args) {
14         /*
15          * 名字    是否借出    借出日期    借出次数
16          * 
17          */
18     //dvd初始化赋值---->作为原有dvd数据
19     //dvd爱情公寓
20     dvd[0][0]="爱情公寓";
21     dvd[0][1]="1";//1表示借出,0表示借出。
22     dvd[0][2]="2";//目前只支持当月借还。
23     dvd[0][3]="3";//借出次数:3次。
24     
25     //dvd重庆森林
26     dvd[1][0]="重庆森林";
27     dvd[1][1]="";//1表示借出,0表示借出。
28     dvd[1][2]="";//借出时间:目前只支持当月借还2号。
29     dvd[1][3]="3";//借出次数:3次。
30     
31     //dvd屌丝男士
32     dvd[2][0]="屌丝男士";
33     dvd[2][1]="1";//1表示借出,0表示借出。
34     dvd[2][2]="3";//借出时间:目前只支持当月借还3号。
35     dvd[2][3]="7";//借出次数:3次。
36     
37     //菜单列表
38     System.out.println("=====dvd管理系统=====");
39     System.out.println("1.dvd新增");
40     System.out.println("2.dvd展示");
41     System.out.println("3.dvd删除");
42     System.out.println("4.dvd修改");
43     System.out.println("5.dvd借出");
44     System.out.println("6.dvd归还");
45     System.out.println("7.退出当前系统");
46     System.out.println("请输入功能编号:");
47     
48     
49     int num=scan.nextInt();//用来接收用户输入的菜单信息
50     //用switch的1234567来实现各个功能菜单。简单明了,也便于阅读和修改。
51     switch(num){
52     case 1:
53     case 2:
54         System.out.println("=====展示列表=====");
55             System.out.println("编号\t片名\t是否借出\t借出时间\t借出次数");
56             //for循环-->为了遍历dvd信息    赋值给dvdI。    一次一条。
57         for(int i=0;i<dvd.length;i++){
58             String[] dvdI=dvd[i];//依次将一维数组赋值给dvdI。
59             //此时i每运行一次,dvdI都会得到了dvd[i]的所有值。即:dvd下标为0时,赋值所有的片名信息,1时,赋值所有的借出状态信息
60             //下面判断,必须有dvdI[0]片名信息才可以展示--遍历输出展示dvd信息
61             if(dvdI[0]!=null){/*判断dvdI是否为空,即:必须要有dvd才可以展示,没有就跳过不展示。防止输出一堆null值的dvd片名等等*/
62             System.out.println((i+1)/*编号*/
63                     +"\t"+dvdI[0]/*片名*/
64                     +"\t"+(dvdI[1]=="1"?"已借出":"未借出")/*是否借出*/
65                     +"\t"+dvdI[2]+(dvdI[2]==""?" ":"号")/*借出时间*/
66                     +"\t"+dvdI[3]);}/*借出次数*/
67         }
68         
69         System.out.println("请输入0返回主界面");
70         
71             break;
72     case 3:
73     case 4:
74     case 5:
75     case 6:
76     case 7:
77     }
78     
79 }
80 }

 


 

>>>>>>>>>>>>>>>>>>>>

三代代码:

备注:依次完善其他几个菜单栏目

  1 package dvdManager8;
  2 
  3 import java.util.Scanner;
  4 
  5 public class DvdSystem8 {
  6     static String[][] dvd = new String[7][4];
  7     static Scanner scan = new Scanner(System.in);
  8     static double price=1.3;//日租单价
  9     public static void main(String[] args) {
 10         /**
 11          * 名字 是否借出 借出日期 借出次数
 12          */
 13         dvd[0][0] = "爱情公寓";
 14         dvd[0][1] = "1";// 1表示借出 0表示未借出
 15         dvd[0][2] = "2";// 目前只支持当月借还 2号
 16         dvd[0][3] = "3";// 借出次数
 17 
 18         dvd[1][0] = "重庆森林";
 19         dvd[1][1] = "0";// 1表示借出 0表示未借出
 20         dvd[1][2] = "";// 借出时间 目前只支持当月借还 2号
 21         dvd[1][3] = "3";// 借出次数
 22 
 23         dvd[2][0] = "屌丝男士";
 24         dvd[2][1] = "1";// 1表示借出 0表示未借出
 25         dvd[2][2] = "3";// 借出时间 ,目前只支持当月借还 3号
 26         dvd[2][3] = "7";// 借出次数
 27         int input;// 接受键盘输入,指导用户输入0,回到主界面
 28 
 29         do { // 使用do while 语句控制,回到主界面
 30             System.out.println("======dvd管理系统=======");
 31             System.out.println("1.dvd新增");
 32             System.out.println("2.dvd展示");
 33             System.out.println("3.dvd删除");
 34             System.out.println("4.dvd修改");
 35             System.out.println("5.dvd借出");
 36             System.out.println("6.dvd归还");
 37             System.out.println("7.退出当前系统");
 38             System.out.println("请输入功能编号:");
 39 
 40             int num = scan.nextInt();// 接受用户输入,选择指定功能编码
 41             switch (num) {
 42             case 1:
 43                 System.out.println("\t\t=====新增dvd信息====");
 44                 System.out.println("请输入dvd名称:");
 45                 String dvdName = scan.next();// 接受用户输入的dvd名称
 46                 boolean isFull = false;// 定义一个变量,初值为false
 47                 for (int i = 0; i < dvd.length; i++) {
 48                     String[] dvdII = dvd[i];// 将每一个一维数组赋值给dvdII
 49                     if (dvdII[0] == null) {
 50                         isFull = true;// 将isFull设置为true,判断语句是否进入
 51                         dvdII[0] = dvdName;// 输入dvd名称
 52                         dvdII[1] = "0";// 刚入库 未借出
 53                         dvdII[2] = "";
 54                         dvdII[3] = "0";
 55                         break;
 56                     }
 57                 }
 58                 if (isFull == false) {
 59                     System.out.println("仓库已满,不能新增");
 60                 } else {
 61                     System.out.println("新增dvd信息成功");
 62                 }
 63                 break;
 64 
 65             case 2:
 66                 System.out.println("\t\t=====展示列表====");
 67                 System.out.println("编号\t片名\t是否借出\t借出时间\t借出次数");
 68                 int j = 1;// 编号
 69                 for (int i = 0; i < dvd.length; i++) {
 70                     String[] dvdI = dvd[i];// 依次将一维数组赋值给dvdI
 71                     if (dvdI[0] != null) {// 判断dvdI是否为空,为空表示没有dvd信息
 72                         // 三目运算符见test.java
 73                         System.out.println((j++) + "\t" + dvdI[0] + "\t"
 74                                 + (dvdI[1] == "1" ? "已借" : "未借") + "\t"
 75                                 + dvdI[2] + (dvdI[2] == "" ? "\t" : "号\t")
 76                                 + dvdI[3]);
 77                     }
 78                 }
 79                 break;
 80             case 3:
 81                 System.out.println("请输入你要删除的dvd名称:");
 82                 String dvdInput = scan.next();// 接受用户输入的dvd名称,且赋值给dvdIII
 83                 boolean isEx = false;
 84                 for (int i = 0; i < dvd.length; i++) {
 85                     String[] dvd1 = dvd[i];// 将每一个一维赋值给dvd1
 86                     if (dvd1[0] != null) {
 87                         if (dvd1[0].equals(dvdInput)) {// 判断是否有这个dvd信息
 88                             isEx = true;
 89                             dvd1[0] = null;// 设置为null删除信息
 90                             dvd1[1] = null;
 91                             dvd1[2] = null;
 92                             dvd1[3] = null;
 93                             break;
 94                         }
 95                     }
 96                 }
 97                 if (isEx == false) {
 98                     System.out.println("该dvd信息不存在");
 99                 } else {
100                     System.out.println("删除成功");
101                 }
102 
103                 break;
104             case 4:
105                 System.out.println("请输入你要修改dvd名称:");
106                 String dvdNa = scan.next();// 用户输入的库中dvd名称
107                 boolean isExsit = false;// 用来判断库中是否有此dvd(如有没有isExsit赋值为true,没有表示保持false值)
108                 for (int i = 0; i < dvd.length; i++) {
109                     String[] dvdN = dvd[i];// 遍历,将每一个一维数组赋值给dvdN;
110                     // equals 判断两个字符串是否相等,相等返回true否则返回false
111                     if (dvdN[0] != null) {// 保证一下比较的dvdN信息不为null
112                         if (dvdN[0].equals(dvdNa)) {// 判断库中是否有这个dvd信息
113                             isExsit = true;// 判断if语句是否进来
114                             System.out.println("请输入你要修改后的dvd名称");
115                             String dvdE = scan.next();// 用dvdE来接受用户修改后的名称
116                             dvdN[0] = dvdE;// 将原来的名称覆盖
117                             break;// 注意问题所在!
118                         }
119                     }
120                 }
121                 if (isExsit == false) {// 两个==叫判断 一个=号 赋值
122                     System.out.println("你要修改的dvd不存在");
123                 } else {
124                     System.out.println("恭喜你,修改成功!!");
125                 }
126                 break;
127             case 5:
128                 System.out.println("请输入你要借出的dvd名称:");
129                 String dName = scan.next();
130                 boolean isExsi = false;
131                 for (int i = 0; i < dvd.length; i++) {
132                     String[] dN = dvd[i];
133                     if (dN[0] != null) {
134                         if (dN[0].equals(dName)) {
135                             isExsi = true;
136                             if (dN[1].equals("1")) {// 判断借出状态是否借出
137                                 System.out.println("对不起,该dvd已经借出,暂时不能出借!");
138                                 break;// 退出当前break所在的最近的循环语句
139                             } else {
140                                 System.out.println("请输入你的借出时间(1-30):");
141                                 int date = scan.nextInt();// 接受用户输入的时间
142                                 dN[2] = String.valueOf(date);// 将int转换为String
143                                 dN[1] = "1";// 改变借出状态
144                                 int twice = Integer.parseInt(dN[3]);// 将数字字符串(“123”)转换为int类型
145                                 dN[3] = String.valueOf(twice + 1); // 将int类型转换为字符串存入dvd信息中
146                                 System.out.println("恭喜你借出成功");
147                                 break;
148                             }
149                         }
150                     }
151                 }
152                 if (!isExsi) {
153                     System.out.println("暂时库中没有你要借的dvd");
154                 }
155                 break;
156             case 6:
157                 System.out.println("请输入你要还的dvd名称:");
158                 String dvdNames=scan.next();
159                 boolean flag=false;
160                 for(int i=0;i<dvd.length;i++){
161                     String [] dvdS=dvd[i];
162                     if(dvdS[0]!=null){
163                     if(dvdS[0].equals(dvdNames)){
164                         flag=true;
165                         if(dvd[1].equals("0")){
166                             System.out.println("dvd没有借出,请到别家!!");
167                             break;
168                         }else{
169                         //归还dvd  逻辑
170                         System.out.println("请输入你的归还日期(1-30):");
171                         int  dateB=scan.nextInt();
172                         if(dateB<Integer.parseInt(dvdS[2])){//判断归还日期是否小于借出日期
173                             System.out.println("输入日期有误,请退出系统重新归还!");
174                         }else{
175                             int time=dateB-Integer.parseInt(dvdS[2]);//计算日期差
176                             double sumPrice=time*price;//计算总费用
177                             System.out.println("请输入客户所付金额:");
178                             double cash=scan.nextDouble();//接受用户所付的金额赋值给cash
179                             if(cash<sumPrice){//判断所付金额是否足额
180                                 System.out.println("您所付的金额不足,请重新支付");
181                             }else{
182                                double changes=cash-sumPrice;//计算找零    
183                                 System.out.println("您的借出日期为:"+dvdS[2]+"号");
184                                 System.out.println("您的归还日期为:"+dateB+"号");
185                                 System.out.println("您租借的时间为:"+(time+1)+"天");
186                                 System.out.println("日租单价为:"+price);
187                                 System.out.println("需要支付:"+sumPrice+"元");
188                                 System.out.println("收入:"+cash+"元");
189                                 System.out.println("找零为:"+changes+"元");
190                                 dvdS[1]="0";//将状态改为未借
191                                 dvdS[2]="";//将借出时间记为空
192                                 System.out.println("归还成功!!");
193                             }
194                          }
195                        }
196                     }    
197                         
198                     }
199                 }
200                 if(!flag){
201                     System.out.println("本店没有这个dvd!!");
202                 }
203                 break;
204             case 7:
205                 System.out.println("系统已退出");
206                 System.exit(-1);
207                 break;
208             }
209 
210             System.out.println("请输入0,回到主界面");
211             input = scan.nextInt();// 接受用户输入
212         } while (input == 0);
213 
214     }
215 }

 

 


 

>>>>>>>>>>>>>>>>>>>>

四代代码:

备注:对几个菜单进行简单的封装。

  1 package dvdManager6_2;
  2 
  3 import java.util.Scanner;
  4 import java.util.Date;//提供即时时间类的包!!
  5 import java.text.SimpleDateFormat;//提供格式化时间类的包!!
  6 public class DvdSystem2 {
  7     //全局变量
  8     static Scanner scan=new Scanner(System.in);
  9     static String[][] dvd=new String[7][4];
 10     
 11     static int input;//接受键盘输入,指导用户输入0,回到主界面
 12     static int num;//接受用户输入,选择指定功能编码
 13     //static int st[]=new int[7];
 14     static double price=1.3;//日租单价
 15     //主函数
 16     public static void main(String[]args ){
 17     /**
 18      * 名字   是否借出   借出日期   借出次数
 19      */
 20         Dvd_system();
 21     }
 22     
 23         
 24     
 25     //各单元    方法汇总
 26     public static void Dvd_system(){
 27         dvdvalue();//功能:dvd值初始化赋值
 28         do{    //使用do while 语句控制,回到主界面 
 29             menushow();    //功能:**菜单栏展示**
 30             num=scan.nextInt();//接受用户输入,选择指定功能编码
 31             
 32         switch (num) {
 33         case 1:/*1.dvd新增、add;*/
 34                 add_1();
 35               break;
 36           
 37         case 2:/*2.dvd展示、show*/
 38                 show_2();
 39               break;
 40               
 41         case 3:/*3.dvd删除、delete*/
 42             delete_3();
 43               break; 
 44               
 45         case 4:/*4.dvd修改、change*/
 46             change_4();
 47               break;
 48               
 49         case 5:/*5.dvd借出*/
 50             lend_5();
 51               break;
 52         case 6:/*6.dvd归还*/
 53             retuen_6();
 54               break;
 55         case 7:/*7.退出当前系统*/
 56             System.out.println("系统已退出");
 57             System.exit(0);//exit(0)就是正常退出,非0就是异常退出
 58               break;
 59         }
 60         
 61          System.out.println("请输入0,回到主界面");
 62          input=scan.nextInt();//接受用户输入
 63         }while(input==0);
 64     }
 65     
 66     
 67     //功能:**菜单栏展示**
 68     public static void menushow(){
 69         System.out.println("======dvd管理系统=======");
 70         System.out.println("1.dvd新增");
 71         System.out.println("2.dvd展示");
 72         System.out.println("3.dvd删除");
 73         System.out.println("4.dvd修改");
 74         System.out.println("5.dvd借出");
 75         System.out.println("6.dvd归还");
 76         System.out.println("7.退出当前系统");
 77         System.out.println("请输入功能编号:");
 78     }
 79     
 80     
 81     
 82     //功能:**dvd值初始化赋值**
 83     public static void dvdvalue(){
 84         dvd[0][0]="爱情公寓";
 85         dvd[0][1]="0";//1表示借出  0表示未借出
 86         dvd[0][2]="0";//目前只支持当月借还 2号
 87         dvd[0][3]="0";//借出次数
 88         
 89         
 90         dvd[1][0]="重庆森林";
 91         dvd[1][1]="0";//1表示借出  0表示未借出
 92         dvd[1][2]="0";//借出时间   目前只支持当月借还 2号
 93         dvd[1][3]="3";//借出次数
 94             
 95         dvd[2][0]="屌丝男士";
 96         dvd[2][1]="1";//1表示借出  0表示未借出
 97         dvd[2][2]="3";//借出时间 ,目前只支持当月借还 3号
 98         dvd[2][3]="7";//借出次数    
 99     }
100     
101     /*功能:**1.dvd新增、add;***/
102     public static void add_1(){
103         System.out.println("\t=============dvd新增============");
104         show_2();
105         System.out.println("\t\t=====新增dvd信息====");        
106         System.out.println("请输入dvd名称:");
107         String dvdName=scan.next();//接受用户输入的dvd名称
108         boolean isFull=false;//定义一个变量,初值为false
109         for(int i=0;i<dvd.length;i++){
110             String [] dvdII=dvd[i];//将每一个一维数组赋值给dvdII
111             if(dvdII[0]==null){
112                 isFull=true;//将isFull设置为true,判断语句是否进入
113                 dvdII[0]=dvdName;//输入dvd名称
114                 dvdII[1]="0";//刚入库  未借出
115                 dvdII[2]="";
116                 dvdII[3]="0";
117                 break;
118             }
119         }
120         if(isFull=false){
121             System.out.println("仓库已满,不能新增");
122         }else{
123             System.out.println("新增dvd信息成功");
124         }
125     }
126     
127     
128     /*功能:**2.dvd展示、show;***/
129     public static void show_2(){
130         System.out.println("\t\t=====展示列表====");    
131         System.out.println("编号\t片名\t是否借出\t借出时间\t借出次数");
132         int j=1;
133         for(int i=0;i<dvd.length;i++){
134             String [] dvdI=dvd[i];//依次将一维数组赋值给dvdI
135             if(dvdI[0]!=null){//判断dvdI是否为空,为空表示没有dvd信息
136                 //三目运算符见test.java    
137                 SimpleDateFormat clock=new SimpleDateFormat("yyyy-MM-dd");
138                 System.out.print((j++));/*编号*/
139                 System.out.println(
140                         "\t"+dvdI[0]/*名称*/
141                         +"\t"+(dvdI[1]=="1"?"已借":"未借")/*是否借出*/
142                         +"\t"+dvdI[2]+(dvdI[2]==""?"\t":"号\t")/*借出时间*/
143                         +dvdI[3]);/*借出次数*/
144             }
145         }
146     }
147     
148     
149     ///*功能:**3.dvd删除、delete;***/--未完善
150     public static void delete_3(){
151         System.out.println("\t=============dvd删除============");
152         show_2();
153         System.out.println("请输入要删除的dvd名称:");//
154         String dvdName=scan.next();
155         boolean isEX=false;
156         for(int i=0;i<dvd.length;i++){
157             String[] dvd1=dvd[i];
158             if(dvd1[0]!=null){
159                 if(dvd1[0].equals(dvdName)){
160                     if(dvd1[1].equals("1")){
161                         System.out.println("此dvd已经借出!不能删除!!");
162                     }else{
163                     isEX=true;
164                     dvd1[0]=null;
165                     dvd1[1]=null;
166                     dvd1[2]=null;
167                     dvd1[3]=null;}
168                 }
169             }    
170         }
171         if(isEX){
172             System.out.println("删除成功!");//
173         }
174         
175     }
176     
177     
178     ///*功能:**4.dvd修改、change*/
179     public static void change_4(){
180         System.out.println("\t=============dvd修改============");
181         show_2();
182         System.out.println("请输入你要修改dvd名称:");
183         String dvdNa=scan.next();//用户输入的库中dvd名称
184         boolean isExsit=false;//用来判断库中是否有此dvd(如有没有isExsit赋值为true,没有表示保持false值)
185         for(int i=0;i<dvd.length;i++){
186             String [] dvdN=dvd[i];//遍历,将每一个一维数组赋值给dvdN;
187             if(dvdN[0]!=null){/*保证一下比较的dvd信息不为null*/
188             if(dvdN[0].equals(dvdNa)){
189                 System.out.println("请输入你要修改后的dvd名称");
190                 String dvdE=scan.next();//用dvdE来接受用户修改后的名称
191                 dvdN[0]=dvdE;//将原来的名称覆盖
192                 isExsit=true;//判断if语句是否进来
193                 break;//注意问题所在!
194             }}
195             if(!(dvdN[0].equals(dvdNa))){System.out.println("你要修改的dvd名称不存在!");
196             break;}
197         }
198         
199         if(isExsit=false){
200             System.out.println("你要修改的dvd不存在");
201         }else{
202             System.out.println("恭喜你,修改成功!!");
203         }
204     }
205     
206     
207     /*5.dvd借出*/
208     public static void lend_5(){
209         System.out.println("\t=============dvd借出============");
210         show_2();
211         System.out.println("请输入要借出的dvd名称:");
212         String dvdName=scan.next();//接受用户输入的dvd名称
213         boolean  sign=false;//定义一个变量,初值为false
214         for(int i=0;i<dvd.length;i++){
215             String[] dvd2=dvd[i];
216 try{
217         if((dvd2[0].equals(dvdName))){/*判断有符合的片名 ,才执行下列语句*/
218             if(dvd2[1].equals("1")){/*判断dv是否借出,已借出给出提示*/
219                     System.out.println("此dvd已经借出,请选择其他dvd:");
220                     break;}
221             if(dvd2[1].equals("0")){/*必须确认 dv未借出!才可以借*/
222                  sign=true;
223                  dvd2[1]="1";/*状态:是否借出*/
224                  /*把String日期强制转换成int日期,再+1。
225                   * 再转换成String类型,赋值给dvd2*/
226                  System.out.println("请输入你的借书时间(1-30)");
227                  int date=scan.nextInt();//接收用户输入的
228                  dvd2[2]=String.valueOf(date);/*借出时间*/
229             //     dvd2[2]=String.valueOf((Integer.parseInt( dvd2[2])+1));/*借出时间*/
230                  dvd2[3]=String.valueOf((Integer.parseInt( dvd2[3])+1));/*借出次数*/
231                  break;}
232             }}catch(Exception e){System.out.println("没有此dvd!");break;}
233 
234 
235         }
236         if(sign){
237             System.out.println("dvd借出成功!");}
238     }
239     
240     /*
241      *dvd归还子菜单规格说明书: 
242      * (1)提示用户输入要归还的dvd名称信息
243      *         接收用户输入的dvd名称信息并赋值记录。
244      * (2)for循环遍历--赋值给新数组dvdS。
245      *         a判断:dvds名不可以为空,才继续
246      *         b判断:用户输入的    片名    须符合    库存中的片名。即:库存中必须有这部dvd,。
247      *             c判断:库存中的这部dvd是否借出。即:须是借出状态才能归还。
248      *             d判断:否则-->是借出状态-->执行归还dvd程序!
249      *                 d2归还dvd程序要求输入:“归还日期、客户所付金额、”。并判断用户输入的是否正确。
250      *                         展示:借出日期、归还日期、租借时间、日租单价、客户所付金额、收入、找零等等
251      *                         重置 :dvd片名的    借出状态、借出日期。
252      *         e完善各提示信息!
253      **/
254     ///*6.dvd归还*/
255     public static void retuen_6(){
256         System.out.println("\t=============dvd归还============");
257         dvdvalue();    
258         System.out.println("请输入你要还的dvd名称:");
259         String dvdNames=scan.next();//接收用户输入的dvd信息并赋值记录。
260         boolean flag=false;
261         
262         for(int i=0;i<dvd.length;i++){
263             String [] dvdS=dvd[i];
264             if((dvdS[0]!=null)){//判断null时常用==。判断输入的字符串常用equals。。此处用equals报错。。。。
265             if(dvdS[0].equals(dvdNames)){
266                 flag=true;
267                 if(dvd[1].equals(null)){
268                     System.out.println("dvd没有借出,请到别家!!");
269                     break;
270                 }else{
271                 //归还dvd.--逻辑
272                 System.out.println("请输入你的归还日期(1-30):");
273 
274                 int  dateB=scan.nextInt();
275                 if(dateB<Integer.parseInt(dvdS[2])){//判断归还日期是否小于借出日期
276                     System.out.println("输入日期有误,请退出系统重新归还!");
277                 }else{
278                     int time=dateB-Integer.parseInt(dvdS[2]);//计算日期差
279                     double sumPrice=time*price;//计算总费用
280                     System.out.println("请输入客户所付金额:");
281                     double cash=scan.nextDouble();//接受用户所付的金额赋值给cash
282                     if(cash<sumPrice){//判断所付金额是否足额
283                         System.out.println("您所付的金额不足,请重新支付");
284                     }else{
285                        double changes=cash-sumPrice;//计算找零    
286                         System.out.println("您的借出日期为:"+dvdS[2]+"号");
287                         System.out.println("您的归还日期为:"+dateB+"号");
288                         System.out.println("您租借的时间为:"+(time+1)+"天");
289                         System.out.println("日租单价为:"+price);
290                         System.out.println("需要支付:"+sumPrice+"元");
291                         System.out.println("收入:"+cash+"元");
292                         System.out.println("找零为:"+changes+"元");
293                         dvdS[1]="0";//将状态改为未借
294                         dvdS[2]="";//将借出时间记为空
295                         System.out.println("归还成功!!");
296                     }
297                  }
298                }
299             }    
300                 
301             }
302         }
303         if(!flag){
304             System.out.println("本店没有这个dvd!!");
305         }
306     }
307 }

 


 

posted @ 2016-12-01 22:35  黄皮书生  阅读(950)  评论(0)    收藏  举报