简易DVD查询系统(Java半学年成果)

值此2018年最后一天,决定上传一下我上个星期做好的DVD查询系统(java);

虽然自己觉得应该会有更简单的方法,但苦于知识的薄弱,暂时只能用这样较为繁琐复杂的方式来实现;

如果以后有新的方法,我会在此文下附上;

以下是我自己做好并在Eclipse上运行试验好的源代码,如有不足还望谅解。

这是DVD任务管理器的主界面:

 1 package day20181224;
 2
 3 import java.text.ParseException;
 4 import java.util.Scanner;
 5
 6 public class DVDMenu {
 7     Scanner input=new Scanner(System.in);
 8     DVDMgr gsp=new DVDMgr();
 9     public void MiniDvd() throws ParseException{
10         System.out.println("欢迎使用迷你DVD管理器");
11         System.out.println("---------------------------");
12         System.out.println("1.新增DVD\n2.查看DVD\n3.删除DVD"
13                 + "\n4.借出DVD\n5.归还DVD\n6.退出");
14         System.out.println("---------------------------");
15         startMenu();
16     }
17     public void startMenu() throws ParseException{
18         System.out.print("请选择:");
19         int get=input.nextInt();
20         switch(get){
21             case 1:
22                 gsp.add();
23                 System.out.println("---------------------------");
24                 returnMenu();
25                 break;
26             case 2:
27                 gsp.search();
28                 System.out.println("---------------------------");
29                 returnMenu();
30                 break;
31             case 3:
32                 gsp.delete();
33                 System.out.println("---------------------------");
34                 returnMenu();
35                 break;
36             case 4:
37                 gsp.borrow();
38                 System.out.println("---------------------------");
39                 returnMenu();
40                 break;
41             case 5:
42                 gsp.returnDvd();
43                 System.out.println("---------------------------");
44                 returnMenu();
45                 break;
46             case 6:
47                 System.out.println("\n谢谢您的使用!");
48                 break;
49             default:
50                 System.out.println("您的输入有误,请重新输入:");
51                 startMenu();
52                 break;
53         }
54     }
55     public void returnMenu() throws ParseException{
56         System.out.print("输入0返回:");
57         if(input.nextInt() == 0){
58             MiniDvd();
59         }else {
60             System.out.println("您的输入有误,请重新输入");
61             returnMenu();
62         }
63     }
64 }

这是信息更新操作:

  1 package day20181224;
  2
  3 import java.text.ParseException;
  4 import java.text.SimpleDateFormat;
  5 import java.util.Date;
  6 import java.util.Scanner;
  7
  8 public class DVDMgr {
  9     Scanner input=new Scanner(System.in);
 10     DVDSet dsp=new DVDSet();
 11     public void initial(){
 12         dsp.name[0]="罗马假日";
 13         dsp.state[0]=0;
 14         dsp.date[0]="2013-7-1";
 15         dsp.name[1]="风声鹤唳";
 16         dsp.state[1]=1;
 17         dsp.name[2]="浪漫满屋";
 18         dsp.state[2]=1;
 19     }
 20     //添加
 21     public void add() throws ParseException{
 22         System.out.println("--->新增DVD");
 23         System.out.println("");
 24         System.out.print("请输入DVD名称:");
 25         String get=input.nextLine();
 26         for(int i=0;i<dsp.name.length;i++){
 27             if(dsp.name[i]==null){
 28                 dsp.name[i]=get;
 29                 dsp.state[i]=1;
 30                 System.out.println("新增《"+get+"》成功!");
 31                 break;
 32             }
 33         }
 34     }
 35     //查看
 36     public void search() throws ParseException{
 37         System.out.println("--->查看DVD");
 38         System.out.println("");
 39         System.out.println("序号\t状态\t名称\t\t借出日期");
 40         for(int i=0;i<dsp.name.length;i++){
 41             if(dsp.name[i]==null){
 42                 break;
 43             }
 44             else if (dsp.state[i]==0){
 45                 System.out.println(i+1+"\t已借出\t"+"<<"+dsp.name[i]+">>\t"+dsp.date[i]);
 46             }else if(dsp.state[i]==1){
 47                 System.out.println(i+1+"\t可借\t"+"<<"+dsp.name[i]+">>");
 48             }
 49         }
 50     }
 51     //删除
 52     public void delete() throws ParseException{
 53         System.out.println("--->删除DVD");
 54         System.out.println("");
 55         System.out.print("请输入DVD名称:");
 56         String get=input.next();
 57         for(int i=0;i<dsp.name.length;i++){
 58             if(dsp.name[i]!=null){
 59                 if(get.equals(dsp.name[i])){
 60                     if(dsp.state[i]==0){
 61                         System.out.println("《"+dsp.name[i]+"》为借出状态,不能删除!");
 62                         break;
 63                     }else if(dsp.state[i]==1){
 64                         for(int j=i;j<dsp.name.length;j++){
 65                             if(dsp.name[j+1] != null){
 66                             dsp.name[j] = dsp.name[j+1];
 67                             dsp.state[j] = dsp.state[j+1];
 68
 69                             }else{
 70                             //清空最后一个值
 71                                 dsp.name[j] = null;
 72                                 dsp.date[j] = null;
 73                                 break;
 74                             }
 75                         }
 76                         System.out.println("删除《"+get+"》成功");
 77                         break;
 78                     }
 79                 }
 80             }else{
 81                 System.out.println("《"+get+"》不存在,不能删除!");
 82                 break;
 83             }
 84         }
 85     }
 86     //借阅
 87     public void borrow() throws ParseException{
 88         System.out.println("--->借出DVD");
 89         System.out.println("");
 90         System.out.print("请输入DVD名称:");
 91         String get=input.nextLine();
 92         for(int i=0;i<dsp.name.length;i++){
 93              if(dsp.name[i]!=null){
 94                     if(dsp.name[i].equals(get) && dsp.state[i] == 1){
 95                         dsp.state[i] = 0;
 96                         System.out.print("请输入借书的时间(年-月-日):");
 97                         Scanner inputDate = new Scanner(System.in);
 98                         dsp.date[i] = inputDate.next();
 99                         System.out.println("借出<<"+get+">>成功!");
100                         break;
101                     }else if(dsp.name[i].equals(get) && dsp.state[i] == 0){
102                         System.out.println("不好意思<<"+get+">>已经被借出!");
103                         break;
104                     }
105                 }else{
106                     System.out.println("没有您要找的DVD!");
107                     break;
108                 }
109         }
110     }
111     //归还
112     public void returnDvd() throws ParseException{
113         System.out.println("--->归还DVD");
114         System.out.println("");
115         System.out.print("请输入DVD名称:");
116         String get=input.nextLine();
117         for(int j=0;j<dsp.name.length;j++){
118             if(dsp.name[j]==null){
119                 System.out.println("没有找到匹配信息!");
120                 break;
121                 }else if(dsp.name[j].equals(get)&&dsp.state[j]==0){
122                     dsp.state[j]=1;
123                     System.out.print("请输入归还日期(年-月-日):");
124                     String get2=input.nextLine();
125                     System.out.println("\n");
126                     System.out.println("归还《"+get+"》成功!");
127                     System.out.println("借出日期为:"+dsp.date[j]);
128                     System.out.println("归还日期为:"+get2);
129                     SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
130                     Date startDate=sdf.parse(dsp.date[j]);//开始时间
131                     Date endDate=sdf.parse(get2);//结束时间
132                     int days=(int)((endDate.getTime()-startDate.getTime())/(24*60*60*1000));
133                     System.out.println("应付租金(元)"+days);
134                     dsp.date[j]=null;
135                     break;
136                 }else if(dsp.name[j].equals(get)&&dsp.state[j]==1){
137                     System.out.println("此书尚未被借,无法进行归还操作!");
138                     break;
139                 }
140             }
141         }
142 }

这是初始化信息:

1 package day20181224;
2
3 public class DVDSet {
4     String[ ] name = new String[50];//DVD 名称数组
5     int[ ] state = new int[50]; //DVD 借出状态:0 已借 出,1 可借
6     String[ ] date=new String[50]; //DVD
7         //初始化
8 }

这是测试类:

 1 package day20181224;
 2
 3 import java.text.ParseException;
 4
 5 public class TestDvd {
 6
 7     public static void main(String[] args) throws ParseException {
 8         DVDMenu cs=new DVDMenu();
 9         //调用初始化值
10         cs.gsp.initial();
11         //调用菜单
12         cs.MiniDvd();
13     }
14
15 }

以上。

最后,祝看到此篇的所有人新年快乐,明年再续辉煌!

原文地址:https://www.cnblogs.com/SUN99bk/p/10203239.html

时间: 2024-10-11 03:38:01

简易DVD查询系统(Java半学年成果)的相关文章

三国武将查询系统 //Java 访问 数据库

import java.awt.*; import javax.swing.*; import java.awt.event.ActionListener; import java.awt.event.ActionEvent; import javax.swing.ImageIcon; import javax.swing.JTextArea; import javax.swing.JLabel; import java.awt.Color; import java.sql.*; import

三国武将查询系统 //Java 訪问 数据库

import java.awt.*; import javax.swing.*; import java.awt.event.ActionListener; import java.awt.event.ActionEvent; import javax.swing.ImageIcon; import javax.swing.JTextArea; import javax.swing.JLabel; import java.awt.Color; import java.sql.*; import

基于java最短路径算法公交查询系统的设计与实现

基于J2EE的公交查询系统的设计与实现 1引言 1.1 选题背景 20多年来,我国经济得到了持续.快速.稳定.健康地发展.经济的快速增长,带动了汽车工业的蓬勃发展,并使交通状况显著改善.据统计,中国公路通车总里程已达130余万公里,其中高速公路约1.5万公里.居民收入普遍提高,到2000年年底,人均GDP已超过800美元,沿海地区已达2000-3000美元.按国际发展惯例,当人均GDP超出1000美元,汽车消费市场就将进入快速增长期.我国城市人口约有2亿,略低于美国人口.东部沿海地区大部分居民已

Windows系统CPU和内存状态实时查询(Java)

一.背景 需要查询Windows服务器的CPU和内存状态. Linux系统查询CPU和内存状态很简单,一个top命令搞定,Windows就稍微麻烦一些了. 经过资料查找,发现jdk目前不能直接查询系统的CPU和内存状态. 进一步查找,发现可以使用第三方库sigar. 二.sigar库下载 1. github上开放源码库(但是没有编译后的dll文件,需要自己通过VS编译) 2. 直接下载编译后的dll文件,推荐一个好用的地址: http://api.256file.com/   //一个纯净的下载

基于Impala平台打造交互查询系统

本文来自网易云社区 原创: 蒋鸿翔 DataFunTalk 本文根据网易大数据蒋鸿翔老师DataFun Talk--"大数据从底层处理到数据驱动业务"中分享的<基于Impala平台打造交互查询系统>编辑整理而成,在未改变原意的基础上稍做整理. 以上是今天的内容大纲,第一个讲一下交互式查询的特点,在大数据平台有很多查询平台可以选择,第二个讲一下依据项目如何选择平台,选型因素是什么.第三个讲一下Impala基本介绍,以及在Impala上的改进.接下来是impala的应用场景,最

开房记录查询系统

开房记录查询系统★★扣扣187.5969★★查全国开房记录,微信聊天记录,手机通话短信清单,全家户籍,身份证轨迹,手机定位,婚姻调查等 推乐趣 在数字世界中,只需点击一下即可获得王国的钥匙. 你知道鱼叉钓鱼是历史上最大的数据泄露背后的唯一秘密武器吗? 这是真的,因为雅虎的一个员工成为一个简单的网络钓鱼攻击的受害者,点击了一个错误的链接,让黑客在公司的内部网络立足. 您可能熟悉网络钓鱼攻击 - 企图窃取用户凭据或财务数据 - 而钓鱼网络钓鱼是一种有针对性的网络钓鱼形式,攻击者欺骗员工或供应商提供远

《结对-自然语言进行数据库查询系统-开发环境搭建过程》

二〇一七年九月十四日晚上十点半多了一分钟 题目:自然语言进行数据库查询系统 编程语言:C# 数据库:MySql ,其他逐渐扩展 环境理论支持windows的所有版本(如果现在仍然有95,98,2000这样的系统那我也没办法了,没实际测试过...) 编译器使用:Visual Studio 2015 数据库使用:MySql数据库(计划未来支持更多) 环境搭建过程:因为环境较为特殊不需要特别搭建哈....

Vue2.0 + Element-UI + WebAPI实践:简易个人记账系统

最近正在学习Vue2.0相关知识,正好近期饿了么桌面端组件Element-UI发布,便动手做了一款简易个人记账系统,以达到实践及巩固目的. 1.开发环境 Win10 + VS2015 + Sqlserver2008R2 + WebAPI + Dapper + Vue2.0 + Element-UI 2.项目解决方案概览 简单介绍下,Account是WebAPI项目,承载前端请求:Account.BLL.Account.DAL.Account.Entity不废话:Account.Common是对D

简易版支付系统部署(单节点) 吴水成

一.前期准备 1.MySQL数据库的安装:MySQL-5.6.22,自行安装 2.Dubbo视频教程--基础篇--第03节--ZooKeeper注册中心安装 3.Dubbo视频教程--基础篇--第06节--Dubbo管理控制台的安装 4.Dubbo视频教程--基础篇--第10节--Dubbo监控中心的介绍与简易监控中心的安装 5.持续集成管理平台(SVN.Nexus.Maven.Hudson)的安装: Dubbo视频教程--基础篇--第11节至18节 6.Dubbo视频教程--高级篇--第21节