1. 首页
  2. IT资讯

JAVA简单模拟DVD功能

建立数组



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.  }

本文来自投稿,不代表程序员编程网立场,如若转载,请注明出处:http://www.cxybcw.com/203453.html

联系我们

13687733322

在线咨询:点击这里给我发消息

邮件:1877088071@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

QR code