关于java:JAVA简单模拟DVD功能

58次阅读

共计 5482 个字符,预计需要花费 14 分钟才能阅读完成。

建设数组



1.  public class DVD_set {
    
2.      // 此处为 copy
    
3.      String[] name = new String[50];// 存储 DVD 的名字
    
4.      String[] date = new String[50];// 以后 DVD 被借出的工夫
    
5.      int[] state = new int[50];// 以后 DVD 的存取状态
    
6.      int[] count = new int[50];// 以后 DVD 被借出的次数
    
7.  }
    

根本函数实现
外汇 MT4 教程 https://www.kaifx.cn/mt4.html



1.  import java.util.Scanner;
    

3.  public class DVD_main {5.      DVD_set DVD = new DVD_set();
    
6.      // 此处为 copy
    
7.      public void initial() {8.          DVD.name[0] = "罗马假日";
    
9.          DVD.state[0] = 0;
    
10.          DVD.count[0] = 30;
    
11.          DVD.date[0] = "2020-11-18";
    

13.          DVD.name[1] = "草木皆兵";
    
14.          DVD.state[1] = 1;
    

16.          DVD.name[2] = "浪漫满屋";
    
17.          DVD.state[2] = 1;
    
18.          DVD.count[2] = 10;
    
19.      }
    

21.      public void startMenu() {23.          Scanner sc = new Scanner(System.in);
    

25.          System.out.println("---------------------------");
    
26.          System.out.println("| Welcome to my DVD world |");
    
27.          System.out.println("|1---------------- 查 看 DVD|");
    
28.          System.out.println("|2---------------- 新 增 DVD|");
    
29.          System.out.println("|3---------------- 删 除 DVD|");
    
30.          System.out.println("|4---------------- 借 出 DVD|");
    
31.          System.out.println("|5---------------- 归 还 DVD|");
    
32.          System.out.println("|0---------------- 退 出 DVD|");
    
33.          System.out.println("---------------------------");
    

35.          System.out.printf("请抉择:");
    

37.          int choose = sc.nextInt();
    

39.          switch (choose) {
    
40.          case 1:
    
41.              DVD_search();
    
42.              returnMenu();
    
43.              break;
    
44.          case 2:
    
45.              DVD_add();
    
46.              returnMenu();
    
47.              break;
    
48.          case 3:
    
49.              DVD_delete();
    
50.              returnMenu();
    
51.              break;
    
52.          case 4:
    
53.              DVD_lend();
    
54.              returnMenu();
    
55.              break;
    
56.          case 5:
    
57.              DVD_return();
    
58.              returnMenu();
    
59.              break;
    
60.          case 0:
    
61.              DVD_out();
    
62.              break;
    
63.          default:
    
64.              System.out.println("输出谬误,请输出 0 返回主界面后从新输出");
    
65.              returnMenu();
    
66.              break;
    
67.          }
    
68.      }
    

70.      // 返回主界面
    
71.      public void returnMenu() {72.          System.out.println("输出 0 返回主界面");
    
73.          Scanner sc = new Scanner(System.in);
    
74.          if (sc.nextInt() == 0) {75.              startMenu();
    
76.          } else {77.              System.out.println("输出谬误,请从新输出");
    
78.              returnMenu();
    
79.          }
    
80.      }
    

82.      // 查看以后所有 DVD 的根本信息
    
83.      public void DVD_search() {84.          System.out.println("-----------------------------------------------------------------");
    
85.          System.out.println("|" + "序号 t" + "|" + "名称 tt" + "|" + "状态 t" + "|" + "借出工夫 t" + "|" + "借出次数 t" + "|");
    
86.          for (int i = 0; i < DVD.name.length; i++) {87.              if (DVD.name[i] == null) {
    
88.                  break;
    
89.              } else if (DVD.state[i] == 0) {90.                  System.out.println("|" + i + "t" + "|" + "<<" + DVD.name[i] + ">>t" + "|" + "已借出 t" + "|"
    
91.                          + DVD.date[i] + "t" + "|" + DVD.count[i] + "tt" + "|");
    
92.              } else if (DVD.state[i] == 1) {93.                  System.out.println("|" + i + "t" + "|" + "<<" + DVD.name[i] + ">>t" + "|" + "可借 t" + "|" + "tt"
    
94.                          + "|" + DVD.count[i] + "tt" + "|");
    
95.              }
    
96.          }
    
97.          System.out.println("-----------------------------------------------------------------");
    
98.      }
    

100.      // 减少 DVD
    
101.      public void DVD_add() {102.          System.out.println("请输入您要增加的 DVD:");
    
103.          Scanner sc = new Scanner(System.in);
    
104.          String name = sc.next();
    

106.          for (int i = 0; i < DVD.name.length; i++) {
    
107.              // 查找到以后数组中有空位的中央
    
108.              if (DVD.name[i] == null) {
    
109.                  // 将须要增加的 DVD 内容输出
    
110.                  DVD.name[i] = name;
    
111.                  // 赋初值,因为是刚增加的图书,所以状态为未借出
    
112.                  DVD.state[i] = 1;
    
113.                  System.out.println("《" + name + "》增加胜利!");
    
114.                  break;
    
115.              }
    
116.          }
    
117.      }
    

119.      // 删除 DVD
    
120.      public void DVD_delete() {121.          System.out.println("请输入您要删除的 DVD 名称:");
    
122.          Scanner sc = new Scanner(System.in);
    
123.          String name = sc.next();
    

125.          for (int i = 0; i < DVD.name.length; i++) {
    
126.              // 循环查找以后库存中的 DVD
    
127.              if (DVD.name[i] != null) {
    
128.                  // 以后库存中 DVD 不为空,当库存中 DVD 遍历完之后
    
129.                  if (DVD.name[i].equalsIgnoreCase(name)) {
    
130.                      // equalsIgnoreCase 能够进行疏忽大小写的字符串比拟
    
131.                      // 判断库中所存的 name 是否和以后输出的 name 雷同
    
132.                      if (DVD.state[i] == 0) {
    
133.                          // 判断 DVD 是否被借出
    
134.                          System.out.println("《" + name + "》" + "曾经被借出!");
    
135.                          // 如果被借出则终止持续查找
    
136.                          break;
    
137.                      } else if (DVD.state[i] == 1) {
    
138.                          // 如果 DVD 没有被借出
    
139.                          for (int j = i; j < DVD.name.length; j++) {
    
140.                              // 如果被删除的 DVD 不是菜单中最初一个
    
141.                              if (DVD.name[j + 1] != null) {
    
142.                                  // 则将须要删除的 DVD 前面的内容移动到后面
    
143.                                  DVD.name[j] = DVD.name[j + 1];
    
144.                                  DVD.state[j] = DVD.state[j + 1];
    
145.                                  DVD.date[j] = DVD.date[j + 1];
    
146.                                  DVD.count[j] = DVD.count[j + 1];
    
147.                              } else {
    
148.                                  // 如果以后须要删除的 DVD 是最初一个,则间接进行删除
    
149.                                  DVD.name[j] = null;
    
150.                                  DVD.date[j] = null;
    
151.                                  DVD.count[j] = 0;
    
152.                                  DVD.state[j] = 1;
    
153.                                  // 删除完结后退出循环
    
154.                                  break;
    
155.                              }
    
156.                          }
    
157.                      }
    
158.                      System.out.println("删除" + "《" + name + "》" + "胜利");
    
159.                      // 删除胜利则完结循环
    
160.                      break;
    
161.                  }
    
162.              } else {
    
163.                  // 遍历残缺个库存都没有找到须要删除的 DVD
    
164.                  System.out.println("没有找到您抉择删除的 DVD!");
    
165.              }
    
166.          }
    
167.      }
    

169.      // 借出 DVD
    
170.      public void DVD_lend() {171.          System.out.println("请输入您要借出的 DVD 名称:");
    
172.          Scanner sc = new Scanner(System.in);
    
173.          String name = sc.next();
    

175.          for (int i = 0; i < DVD.name.length; i++) {
    
176.              // 循环查找以后库存中的 DVD
    
177.              if (DVD.name[i] != null) {
    
178.                  // 以后库存中 DVD 不为空,当库存中 DVD 遍历完之后
    
179.                  if (DVD.name[i].equalsIgnoreCase(name)) {
    
180.                      // equalsIgnoreCase 能够进行疏忽大小写的字符串比拟
    
181.                      // 判断库中所存的 name 是否和以后输出的 name 雷同
    
182.                      if (DVD.state[i] == 0) {
    
183.                          // 判断 DVD 是否被借出
    
184.                          System.out.println("《" + name + "》" + "曾经被借出!");
    
185.                          // 如果被借出则终止持续查找
    
186.                          break;
    
187.                      } else if (DVD.state[i] == 1) {
    
188.                          // 如果 DVD 没有被借出
    
189.                          DVD.state[i] = 0;
    

191.                          System.out.println("请输出借阅日期:");
    
192.                          String date = sc.next();
    
193.                          DVD.date[i] = date;
    
194.                          DVD.count[i] += 1;
    
195.                          System.out.println("《" + name + "》" + "已胜利借出!");
    
196.                          break;
    
197.                      }
    
198.                  }
    
199.              } else {
    
200.                  // 遍历残缺个库存都没有找到须要删除的 DVD
    
201.                  System.out.println("没有找到您抉择借出的 DVD!");
    
202.              }
    
203.          }
    
204.      }
    

206.      // 偿还 DVD
    
207.      public void DVD_return() {208.          System.out.println("请输入您要偿还的 DVD 名称:");
    
209.          Scanner sc = new Scanner(System.in);
    
210.          String name = sc.next();
    

212.          for (int i = 0; i < DVD.name.length; i++) {
    
213.              // 循环查找以后库存中的 DVD
    
214.              if (DVD.name[i] != null) {
    
215.                  // 以后库存中 DVD 不为空,当库存中 DVD 遍历完之后
    
216.                  if (DVD.name[i].equalsIgnoreCase(name)) {
    
217.                      // equalsIgnoreCase 能够进行疏忽大小写的字符串比拟
    
218.                      // 判断库中所存的 name 是否和以后输出的 name 雷同
    
219.                      if (DVD.state[i] == 0) {
    
220.                          // 判断 DVD 是否被借出
    
221.                          DVD.state[i] = 1;
    
222.                          System.out.println("《" + name + "》" + "曾经偿还结束!");
    
223.                          break;
    
224.                      }
    
225.                  }
    
226.              } else {
    
227.                  // 遍历残缺个库存都没有找到须要删除的 DVD
    
228.                  System.out.println("没有找到您抉择偿还的 DVD!");
    
229.              }
    
230.          }
    
231.      }
    

233.      // 退出 DVD 管理系统
    
234.      public void DVD_out() {235.          System.out.println("感谢您的应用,欢送下次光顾!");
    
236.      }
    
237.  }
    

程序简略运行



1.  import java.util.*;
    
2.  import java.text.*;
    

4.  public class DVD_demo {5.      public static void main(String[] args) {7.          DVD_main DVD = new DVD_main();
    

9.          DVD.initial();
    
10.          DVD.startMenu();
    
11.      }
    
12.  }
    

正文完
 0