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 }

?


?

轉載于:https://www.cnblogs.com/xuehx/p/6123889.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/371923.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/371923.shtml
英文地址,請注明出處:http://en.pswp.cn/news/371923.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

佳能2900打印機與win10不兼容_佳能RF 1.4、RF 2增倍鏡與RF 100500mm L IS USM并不完全兼容...

據佳能官方透露&#xff0c;佳能RF 1.4、RF 2增倍鏡與RF 100-500mm F4.5-7.1 L IS USM鏡頭并不完全兼容。在安裝使用兩款增倍鏡時&#xff0c;用戶需將RF 100-500mm鏡頭變焦環的變焦位置移動到超過300mm的遠攝區域。而在搭配增倍鏡后&#xff0c;鏡頭變焦范圍將限定在300-500mm…

縣級的圖書館計算機管理員,圖書館管理員的崗位職責

圖書館管理員的崗位職責導語&#xff1a;在領導的命令下&#xff0c;緊緊圍繞學校總體工作要求&#xff0c;牢固樹立全心全意為教學及教科研第一線服務的思想&#xff0c;工作主動熱情&#xff0c;努力做好管理育人的工作。圖書館管理員崗位職責&#xff1a;1、每學期認真制訂切…

使用Java快速入門的Apache Thrift

Apache Thrift是由facebook創建的RPC框架&#xff0c;現在它是一個Apache項目。 Thrift可讓您在不依賴語言的定義文件中定義數據類型和服務接口。 該定義文件用作編譯器的輸入&#xff0c;以生成用于構建通過不同編程語言進行通信的RPC客戶端和服務器的代碼。 您也可以參考Thri…

Windows/Linux安裝python2.7,pycharm和pandas——《利用Python進行數據分析》

一、Windows下&#xff08;兩種方法&#xff09; 1. 安裝Python EDP_free并安裝pandas ① 如果你沒有安裝python2.7&#xff0c;可以直接選擇安裝Python EDP_free&#xff0c;然后再安裝pandas等包就行 &#xff1a; Python EDP_free 網址&#xff1a; http://epdfree-7-3-2.…

Python基礎類型

1. 列表、元組操作 列表是我們最以后最常用的數據類型之一&#xff0c;通過列表可以對數據實現最方便的存儲、修改等操作 定義列表 names [Alex,"Tenglan",Eric] 通過下標訪問列表中的元素&#xff0c;下標從0開始計數 >>> names[0] Alex >>> nam…

angular點擊按鈕彈出頁面_Win10提示“由于啟動計算機時出現了頁面文件配置問題”解決方法...

我們在使用Windows10系統的過程中&#xff0c;經常會遇到一些問題。近期有一個網友咨詢裝機之家小編&#xff0c;稱自己Windows10系統開機之后&#xff0c;彈出系統屬性對話框&#xff0c;提示“由于啟動計算機時出現了頁面文件配置問題”的問題&#xff0c;我們要如何解決呢&a…

計算機程序編程就業,計算機編程就業

為畢業生寫計算機編程就業提供計算機編程就業范文參考,涵蓋碩士、大學本科畢業論文范文和職稱論文范文&#xff0c;包括論文選題、開題報告、文獻綜述、任務書、參考文獻等&#xff0c;是優秀免費計算機編程就業網站。基于編程語言類課程教學方法的探討位把考查學生的編程能力也…

Spring集成–第1節– Hello World

Spring Integration的“ Hello World ” –考慮一個簡單的程序&#xff0c;以使用Spring Integration將“ Hello World”打印到控制臺&#xff0c;并在此過程中訪問一些企業集成模式概念 在進入程序本身之前&#xff0c;快速回顧一下消息傳遞概念將很有用–消息傳遞是一種集成樣…

正則表達式貪婪模式與懶惰模式

正則表達式貪婪匹配模式&#xff0c;對于初學者&#xff0c;往往也很容易出錯。有時候需要匹配一個段代碼內容&#xff0c;發現匹配與想要不一致。發現原來&#xff0c;跟貪婪模式有關系。如下&#xff0c;我們看下例子&#xff1a; 什么是貪婪模式 字符串有: “<h3>abd&…

stm32 薄膜鍵盤原理_市面上的筆記本鍵盤優缺點解析,看完秒懂

大家在選購電腦時&#xff0c;很多人的關注重點都是筆記本的配置好不好、外觀設計酷不酷和電池續航能力強不強&#xff0c;對電腦鍵盤往往不會太在意&#xff0c;其實一個好的電腦鍵盤也可以幫助你提高工作效率&#xff0c;特別對于小編這樣的文字工作者&#xff0c;如果鍵盤手…

計算機等級考試心得體會,計算機等級考試心得體會(2)

估計以后的考試也可能略有變化&#xff0c;即逐漸增加使用命令的條數。由于該內容變化小&#xff0c;考生應當練習到純熟的境地&#xff0c;在考試時用盡可能少的時間來做這部分內容&#xff0c;以使其他內容有更多的時間。六題能做出五題即可&#xff0c;有一題一時想不起&…

Web開發框架–第1部分:選項和標準

在我的公司&#xff0c;我們正在評估未來幾年將使用哪種Web開發框架。 自上次評估以來&#xff0c;我們一直在使用由Struts 2驅動的Java應用服務器作為MVC&#xff0c;將Tiles作為模板引擎&#xff0c;將jQuery用于Javascript awesomennes&#xff0c;將DWR用于AJAX調用&#x…

增加一個類的功能可以采用繼承或者代理模式或者裝飾者模式

增加一個類的功能有3種辦法&#xff1a; 1.繼承 2.代理模式 3.裝飾者模式轉載于:https://www.cnblogs.com/panxuejun/p/6127837.html

dell增強保護套裝還原失效_汕頭長安歐尚汽車音響改裝升級,還原真實音色

今天給大家分享的是汕頭車韻汽車音響改裝店開業以來&#xff0c;升級改裝的第113輛長安汽車。長安歐尚x7外觀設計十分出彩&#xff0c;整體造型動感十足&#xff0c;前臉采用六邊形大尺寸的前格柵&#xff0c;并加入了“云鷹之翼”的設計元素&#xff0c;造型十分具有攻擊性&am…

POJ 2386 Lake Counting

鏈接&#xff1a;http://poj.org/problem?id2386 Lake Counting Time Limit: 1000MS Memory Limit: 65536KTotal Submissions: 24263 Accepted: 12246Description Due to recent rains, water has pooled in various places in Farmer Johns field, which is represented by a…

計算機窗口顏色不能自定義,用RBG顏色設置自定義顏色

這個是Mac自帶的測色計快捷鍵shift command c即可復制RBG格式的顏色#DD0000 這個是csdn 的logo里的紅色我們得到的是十六位顏色代碼但是UIColor()只有這幾種初始化方式init(white: CGFloat, alpha: CGFloat)init(hue: CGFloat, saturation: CGFloat, brightness: CGFloat, al…

http協議和瀏覽器緩存問題

HTTP是超文本傳輸協議。 HTTP是一個應用層協議&#xff0c;由請求和響應構成&#xff0c;是一個標準的客戶端服務器模型。HTTP是一個無狀態的協議。 轉載于:https://www.cnblogs.com/hodgson/p/6128003.html

Spring3國際化和本地化

我最近想將Spring 3提供的國際化和本地化功能添加到我當前的項目之一中。 我瀏覽了Spring文檔&#xff0c;然后在Internet上搜索以找到一些資源。 但是我找不到能夠滿足客戶要求的資源。 大多數教程都像hello world應用程序&#xff0c;它提供了基本的理解。 即使是spring文檔&…

h3c交換機 查看二層交換機端口ip_【分享】項目中如何選到稱心如意的交換機?...

項目中如何選擇交換機&#xff1f;這七個步驟不能少如何選擇交換機&#xff1f;如何根據項目確定網絡結構&#xff1f;我們在做大部分項目都有這樣的疑問&#xff0c;交換機做為弱電中最常用的設備之一&#xff0c;關于他的使用與選擇&#xff0c;不得不知&#xff0c;本期我們…

SSH中一些典型的問題

struts2 1-1&#xff1a;為什么每次請求都要創建一個Action對象&#xff1f; 是出于對線程安全的考慮&#xff0c;每個request都不會相互影響 1-2&#xff1a;ModelDriven攔截器的配置中refreshModelBeforeResult解決了什么問題&#xff1f; 先把舊的model對象從ValueStack…