简易DVD查询系统
==========
DVD管理系统
==========
这是DVD任务管理器的主界面:
package day20181224; import java.text.ParseException;
import java.util.Scanner; public class DVDMenu {
Scanner input=new Scanner(System.in);
DVDMgr gsp=new DVDMgr();
public void MiniDvd() throws ParseException{
System.out.println("欢迎使用迷你DVD管理器");
System.out.println("---------------------------");
System.out.println("1.新增DVD\n2.查看DVD\n3.删除DVD"
+ "\n4.借出DVD\n5.归还DVD\n6.退出");
System.out.println("---------------------------");
startMenu();
}
public void startMenu() throws ParseException{
System.out.print("请选择:");
int get=input.nextInt();
switch(get){
case 1:
gsp.add();
System.out.println("---------------------------");
returnMenu();
break;
case 2:
gsp.search();
System.out.println("---------------------------");
returnMenu();
break;
case 3:
gsp.delete();
System.out.println("---------------------------");
returnMenu();
break;
case 4:
gsp.borrow();
System.out.println("---------------------------");
returnMenu();
break;
case 5:
gsp.returnDvd();
System.out.println("---------------------------");
returnMenu();
break;
case 6:
System.out.println("\n谢谢您的使用!");
break;
default:
System.out.println("您的输入有误,请重新输入:");
startMenu();
break;
}
}
public void returnMenu() throws ParseException{
System.out.print("输入0返回:");
if(input.nextInt() == 0){
MiniDvd();
}else {
System.out.println("您的输入有误,请重新输入");
returnMenu();
}
}
}
这是信息更新操作:
package day20181224; import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner; public class DVDMgr {
Scanner input=new Scanner(System.in);
DVDSet dsp=new DVDSet();
public void initial(){
dsp.name[0]="罗马假日";
dsp.state[0]=0;
dsp.date[0]="2013-7-1";
dsp.name[1]="风声鹤唳";
dsp.state[1]=1;
dsp.name[2]="浪漫满屋";
dsp.state[2]=1;
}
//添加
public void add() throws ParseException{
System.out.println("--->新增DVD");
System.out.println("");
System.out.print("请输入DVD名称:");
String get=input.nextLine();
for(int i=0;i<dsp.name.length;i++){
if(dsp.name[i]==null){
dsp.name[i]=get;
dsp.state[i]=1;
System.out.println("新增《"+get+"》成功!");
break;
}
}
}
//查看
public void search() throws ParseException{
System.out.println("--->查看DVD");
System.out.println("");
System.out.println("序号\t状态\t名称\t\t借出日期");
for(int i=0;i<dsp.name.length;i++){
if(dsp.name[i]==null){
break;
}
else if (dsp.state[i]==0){
System.out.println(i+1+"\t已借出\t"+"<<"+dsp.name[i]+">>\t"+dsp.date[i]);
}else if(dsp.state[i]==1){
System.out.println(i+1+"\t可借\t"+"<<"+dsp.name[i]+">>");
}
}
}
//删除
public void delete() throws ParseException{
System.out.println("--->删除DVD");
System.out.println("");
System.out.print("请输入DVD名称:");
String get=input.next();
for(int i=0;i<dsp.name.length;i++){
if(dsp.name[i]!=null){
if(get.equals(dsp.name[i])){
if(dsp.state[i]==0){
System.out.println("《"+dsp.name[i]+"》为借出状态,不能删除!");
break;
}else if(dsp.state[i]==1){
for(int j=i;j<dsp.name.length;j++){
if(dsp.name[j+1] != null){
dsp.name[j] = dsp.name[j+1];
dsp.state[j] = dsp.state[j+1]; }else{
//清空最后一个值
dsp.name[j] = null;
dsp.date[j] = null;
break;
}
}
System.out.println("删除《"+get+"》成功");
break;
}
}
}else{
System.out.println("《"+get+"》不存在,不能删除!");
break;
}
}
}
//借阅
public void borrow() throws ParseException{
System.out.println("--->借出DVD");
System.out.println("");
System.out.print("请输入DVD名称:");
String get=input.nextLine();
for(int i=0;i<dsp.name.length;i++){
if(dsp.name[i]!=null){
if(dsp.name[i].equals(get) && dsp.state[i] == 1){
dsp.state[i] = 0;
System.out.print("请输入借书的时间(年-月-日):");
Scanner inputDate = new Scanner(System.in);
dsp.date[i] = inputDate.next();
System.out.println("借出<<"+get+">>成功!");
break;
}else if(dsp.name[i].equals(get) && dsp.state[i] == 0){
System.out.println("不好意思<<"+get+">>已经被借出!");
break;
}
}else{
System.out.println("没有您要找的DVD!");
break;
}
}
}
//归还
public void returnDvd() throws ParseException{
System.out.println("--->归还DVD");
System.out.println("");
System.out.print("请输入DVD名称:");
String get=input.nextLine();
for(int j=0;j<dsp.name.length;j++){
if(dsp.name[j]==null){
System.out.println("没有找到匹配信息!");
break;
}else if(dsp.name[j].equals(get)&&dsp.state[j]==0){
dsp.state[j]=1;
System.out.print("请输入归还日期(年-月-日):");
String get2=input.nextLine();
System.out.println("\n");
System.out.println("归还《"+get+"》成功!");
System.out.println("借出日期为:"+dsp.date[j]);
System.out.println("归还日期为:"+get2);
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
Date startDate=sdf.parse(dsp.date[j]);//开始时间
Date endDate=sdf.parse(get2);//结束时间
int days=(int)((endDate.getTime()-startDate.getTime())/(24*60*60*1000));
System.out.println("应付租金(元)"+days);
dsp.date[j]=null;
break;
}else if(dsp.name[j].equals(get)&&dsp.state[j]==1){
System.out.println("此书尚未被借,无法进行归还操作!");
break;
}
}
}
}
这是初始化信息:
package day20181224; public class DVDSet {
String[ ] name = new String[50];//DVD 名称数组
int[ ] state = new int[50]; //DVD 借出状态:0 已借 出,1 可借
String[ ] date=new String[50]; //DVD
//初始化
}
这是测试类:
package day20181224; import java.text.ParseException; public class TestDvd { public static void main(String[] args) throws ParseException {
DVDMenu cs=new DVDMenu();
//调用初始化值
cs.gsp.initial();
//调用菜单
cs.MiniDvd();
} }
以上。
最后,祝看到此篇的所有人新年快乐,明年再续辉煌!
简易DVD查询系统的更多相关文章
- Python 小案例实战 —— 简易银行存取款查询系统
Python 小案例实战 -- 简易银行存取款查询系统 涉及知识点 包的调用 字典.列表的混合运用 列表元素索引.追加 基本的循环与分支结构 源码 import sys import time ban ...
- Vue2.0 + Element-UI + WebAPI实践:简易个人记账系统
最近正在学习Vue2.0相关知识,正好近期饿了么桌面端组件Element-UI发布,便动手做了一款简易个人记账系统,以达到实践及巩固目的. 1.开发环境 Win10 + VS2015 + Sqlser ...
- 简易的CRM系统案例之易的CRM系统案例之JSP+MySQL+SSH框架版本
主要对上一篇hibernate与Spring进行整合改进 简易的CRM系统案例之Struts2+Hibernate3+JSP+MySQL版本 bean-base.xml <?xml versio ...
- 简易的CRM系统案例之Struts2+Hibernate3+JSP+MySQL版本
改造上一版本的DAO层 简易的CRM系统案例之Struts2+JSP+MySQL版本 src文件下hibernate.cfg.xml <!DOCTYPE hibernate-configurat ...
- Android查询系统的音频(音乐播放器的核心)
//查询系统的音频库 public static List<MusicBean> getMusicInfo(Context context){ List<MusicBean> ...
- 用dedecms自定义表单创建简易自助预约系统
建站往往需要根据客户的需求来增加相应的功能,比如预约.平时用比较多的是织梦系统,那么如何用dedecms自定义表单创建简易自助预约系统呢? 进入dedecms后台,左侧菜单中依次点击“核心” - 频道 ...
- 用excel打造报表查询系统
网络数据库以及ERP在中小型企业中日益风行,虽然ERP功能强大,但有的ERP报表系统中规范的报表较少,主要提供二次开发接口或通过如CRYSTALREPORT等其他报表工具进行管理,其实我们可以使用Ex ...
- 【云图】如何制作全国KTV查询系统?
原文:[云图]如何制作全国KTV查询系统? 摘要:本文以[唱吧]531麦霸音乐节为案例,详细解读了如何导入自有数据到高德云图,并进行检索和展示.最后,调起高德mobile地图来进行路线规划和周边查询. ...
- 【百度地图API】建立全国银行位置查询系统(五)——如何更改百度地图的信息窗口内容?
原文:[百度地图API]建立全国银行位置查询系统(五)--如何更改百度地图的信息窗口内容? 摘要: 酷讯.搜房.去哪儿网等大型房产.旅游酒店网站,用的是百度的数据库,却显示了自定义的信息窗口内容,这是 ...
随机推荐
- 解决办法: RSA host key for [ip address] has changed and you have requested strict checking.
在服务器重装后想要远程连接服务器,报错如下: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: REMOTE ...
- Python实现selenium回放时间设置
一般在做selenium时会有,回放快慢的需求. 实现思路: 1.一般写selenium会自定义findelement函数,来实现查找元素. 2.在查找函数上加个睡眠时间的装饰器,函数执行完等待若干秒 ...
- 工具方法 获取远程IP
java-code: public String getRemoteIP(HttpServletRequest request) { String clientIp = request.getHead ...
- Django配置xadmin后台模板之坑(一)
环境: Python3.6 + Django2.0 + xadmin2.0 一.安装 1.首先安装就会有一个坑,很多教程的安装是直接在虚拟环境下使用 pip install xadmin 或者 pip ...
- aop编程之前置通知
aop( Aspect-Oriented Programming)前置通知原理案例讲解 编程步骤: 定义接口 编写对象(被代理的对象即目标对象) 编写通知(前置通知即目标方法调用前调用) 在beans ...
- c# 调试模式下Swaggerf附加接口参数
c# 调试模式下Swaggerf附加接口参数,如:每个接口Header中附加参数appId 1.新增过滤器: public class GlobalHttpHeaderFilter : IOperat ...
- java outterLoop跳出多重循环用法以及详解
List<CommResultMsg> listresult=new ArrayList<CommResultMsg>(); outterLoop :for (int i = ...
- PKCS#1
ASN.1 syntax,octet string是一个8 bytes sequence string. RSA中涉及到的Data conversion: 1)I2OSP,Integer to Oct ...
- SQL性能优化前期准备-清除缓存、开启IO统计
文章来至:https://www.cnblogs.com/Ren_Lei/p/5669662.html 如果需要进行SQl Server下的SQL性能优化,需要准备以下内容: 一.SQL查询分析器设置 ...
- uvalive 3887 Slim Span
题意: 一棵生成树的苗条度被定义为最长边与最小边的差. 给出一个图,求其中生成树的最小苗条度. 思路: 最开始想用二分,始终想不到二分终止的条件,所以尝试暴力枚举最小边的长度,然后就AC了. 粗略估计 ...