package com.xxx.dvd;public class DVDSet {public String name;//dvd名称public int state;//dvd状态public String date;//借dvd日期public int count;//借DVD次数public String getName() {return name;}public void setName(String name) {this.name = name;}public int getState() {return state;}public void setState(int state) {this.state = state;}public String getDate() {return date;}public void setDate(String date) {this.date = date;}public int getCount() {return count;}public void setCount(int count) {this.count = count;}public DVDSet() {super();// TODO Auto-generated constructor stub}public DVDSet(String name, int state, String date,int count) {super();this.name = name;this.state = state;this.date = date;this.count = count;}}
package com.xxx.dvd;import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;public class DVDMgr {public DVDSet[] dvd = new DVDSet[100];public  void initial(){//初始化dvd[0] = new DVDSet("罗马假日",0,"2013-7-1",1);dvd[1] = new DVDSet("风声鹤唳",1,"",0);dvd[2] = new DVDSet("浪漫满屋",1,"",0);}//增加dvdpublic void addDvd(){Scanner sc = new Scanner(System.in);System.out.println("--->新增DVD");System.out.println("请输入DVD名称:");String name = sc.next();System.out.println("新增"+name+"成功!");int index;for (index = 0; index < dvd.length; index++) {if(dvd[index]==null){break;}}dvd[index]=new DVDSet(name,1,"",0);}//查看dvdpublic void ShowDvd(){System.out.println("--->查看书籍");System.out.println("序号"+"\t"+"名称"+"\t"+"状态"+"\t"+"借出日期");for (int i = 0; i < dvd.length; i++) {if(dvd[i] != null){if(dvd[i].getState()==1){System.out.println(i+"\t"+dvd[i].getName()+"\t"+"可借"+"\t"+dvd[i].getDate());}else{System.out.println(i+"\t"+dvd[i].getName()+"\t"+"已借出"+"\t"+dvd[i].getDate());}}}}//删除dvdpublic void deleteDvd(){System.out.println("--->删除DVD");Scanner sc = new Scanner(System.in);System.out.println("输入DVD名称");String dvdname = sc.nextLine();int index;//删除dvd的索引for (int i = 0; i < dvd.length; i++) {if(dvd[i].getName().equals(dvdname)){//找到要删除dvd的序列index = i;//序列赋值给indexif(dvd[index].getState()==1){//判断是否借出int j=0;for (int k = 0; k < dvd.length; k++) {if(k!=index){dvd[j]=dvd[k];j++;}}}else{System.out.println("改dvd已经借出!无法删除");}break;}}System.out.println(dvdname+"删除成功!");}//借DVDpublic void borrowDVD(){Scanner sc = new Scanner(System.in);System.out.println("--->借出DVD");System.out.println("输入DVD名称:");String dvdname = sc.nextLine();try {for (int i = 0; i < dvd.length; i++) {if(dvd[i].name.equals(dvdname)){if(dvd[i].getState()==1){System.out.println("请输入借DVD日期:");String date = sc.nextLine();dvd[i].setState(0);dvd[i].setDate(date);System.out.println("借出"+dvdname+"成功!");int count = dvd[i].getCount();dvd[i].setCount(++count);break;}if(dvd[i].getState()==0){System.out.println("该DVD以借出!");break;}}}} catch (NullPointerException e) {e.printStackTrace();}}//归还DVDpublic void returnDvd() throws ParseException{int money;//租金Scanner sc = new Scanner(System.in);System.out.println("--->归还DVD");System.out.println("输入DVD名称:");String dvdname = sc.nextLine();try {for (int i = 0; i < dvd.length; i++) {if(dvd[i].name.equals(dvdname)){if(dvd[i].getState()==0){System.out.println("输入归还日期:");String retuenDate = sc.nextLine();dvd[i].setState(1);System.out.println("归还"+dvdname+"成功!");System.out.println("借出日期:"+retuenDate);System.out.println("归还日期:"+dvd[i].getDate());SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");Date rdate = sdf.parse(retuenDate);//将输入的字符串转换为日期类型 还书日期Date bdate = sdf.parse(dvd[i].getDate());//借dvd日期long days=(rdate.getTime()-bdate.getTime())/(1000*3600*24);//计算借了多少天money = (int) (days*1);System.out.println("应付租金:"+money+"元");dvd[i].setDate("");break;}if(dvd[i].getState()==1){System.out.println("该DVD以借出!");break;}}}} catch (NullPointerException e) {e.printStackTrace();}}//借dvd次数排行榜public void maxCount(){System.out.println("dvd借出排行榜");System.out.println("---------------------");for (int i=dvd.length-1;i>0;i--) {if(dvd[i]!=null){for (int j = 0; j < i; j++) {if(dvd[j]!=null){if(dvd[j].getCount()<dvd[j+1].getCount()){DVDSet[] temp = new DVDSet[100];temp[0] = dvd[j];dvd[j]=dvd[j+1];dvd[j+1]=temp[0];}}}}}System.out.println("dvd名"+"\t"+"次数");for (int i = 0; i < dvd.length; i++) {if(dvd[i]!=null){System.out.println(dvd[i].getName()+"\t"+dvd[i].getCount());}}}}
package com.xxx.dvd;import java.text.ParseException;
import java.util.Scanner;public class Menu {public static void starMenu(DVDMgr dm){System.out.println("欢迎使用迷你DVD管理器");System.out.println("----------------------");System.out.println("0.DVD排行榜");System.out.println("1.新增DVD");System.out.println("2.查看DVD");System.out.println("3.删除DVD");System.out.println("4.借出DVD");System.out.println("5.归还DVD");System.out.println("6.退出");System.out.println("----------------------");showMenu(dm);}public static void showMenu(DVDMgr dm){Scanner sc = new Scanner(System.in);System.out.println("请选择:");int a = sc.nextInt();switch (a) {case 0://dvd借出排行榜dm.maxCount();returnMenu(dm);break;case 1://新增dvddm.addDvd();returnMenu(dm);break;case 2://查看dvddm.ShowDvd();returnMenu(dm);break;case 3://删除dvddm.deleteDvd();returnMenu(dm);break;case 4://借出dvddm.borrowDVD();returnMenu(dm);break;case 5://归还dvdtry {dm.returnDvd();} catch (ParseException e) {// TODO Auto-generated catch blocke.printStackTrace();}returnMenu(dm);break;case 6://退出System.out.println("谢谢使用!");break;default:break;}}public static void returnMenu(DVDMgr dm){System.out.println("输入0返回");Scanner sc = new Scanner(System.in);int a = sc.nextInt();if(a==0){starMenu(dm);}else{System.out.println("系统退出!");}}}
package com.xxx.dvd;public class Test {public static void main(String[] args) {DVDMgr dm = new DVDMgr();dm.initial();Menu.starMenu(dm);}}

java迷你DVD管理器相关推荐

  1. JAVA之迷你DVD管理器

    1.JAVA之迷你DVD管理器. 1>打开记事本,写如下一段代码: import java.text.ParseException; import java.text.SimpleDateFor ...

  2. JAVA综合练习-迷你DVD管理器

    系统概述 为某音像店开发一个迷你DVD管理器,实现DVD碟片的管理,包括如下功能: 新增DVD 查看DVD 删除DVD 借出DVD 归还DVD 退出DVD. 实现数据初始化 实现菜单切换 实现查看DV ...

  3. 迷你DVD管理器项目

    1 package chapter5; 2 import java.util.*; 3 4 public class MiniDVD { 5 public static void main(Strin ...

  4. Java迷你图书管理器1.2-面向对象+I/O流

    CSDN话题挑战赛第2期 参赛话题:Java技术分享 迷你图书管理器 author:luckyboy! version:1.2 知识储备:变量.数据类型.选择结构.循环结构.数组 .面向对象.集合和I ...

  5. DVD管理系统:为某音像店开发一个迷你DVD管理器,实现DVD碟片的管理,包括如下功能:

     package com.sxt.oop.dvd; /**  * DVD类  * @author ty  *  */ public class Dvd implements Comparable& ...

  6. Java求生之路--迷你DVD管理器

    //DVD类 public class DVD {boolean flag = false;int num;Scanner input = new Scanner (System.in);String ...

  7. 14、Java——迷你图书管理器(对象+数组)

    ✅作者简介:热爱国学的Java后端开发者,修心和技术同步精进.

  8. 32、Java——迷你图书管理器(对象+JDBC)

    ✅作者简介:热爱国学的Java后端开发者,修心和技术同步精进.

  9. Java——迷你图书管理器(JDBC+MySQL+Apache DBUtils)

    ​ ✅作者简介:热爱国学的Java后端开发者,修心和技术同步精进.

最新文章

  1. 黄聪:原生js的音频播放器,兼容pc端和移动端(原创)
  2. 作为AI的“辅助大臣”,区块链的前途不可限量
  3. centos6.5编译安装php7
  4. Example002定时打开窗口
  5. Ubuntu 16.04下减小/释放/清理VirtualBox虚拟硬盘文件的大小
  6. Linux 命令之 apt-mark -- 对 APT 软件包设置标记
  7. 如何利用火狐获取网址中的提交链接
  8. Nginx学习之一-第一个程序Hello World
  9. linux tcp文件分包_在Linux下基于TCP协议的文件传输程序.
  10. HTML5+CSS期末大作业:环保网站设计——环境保护(10页) 含设计报告 HTML+CSS+JavaScript 静态HTML环境保护网页制作下载 DIV+CSS环保网页设计代码...
  11. Eclipse中SVN分支与合并
  12. linux ftp client安装,Linux 离线安装 FTP客户端
  13. 考研和计算机三级,考研考计算机与考软件有什么区别吗
  14. React学习笔记之三(关于setState的若干问题及其讨论)
  15. jshop测试分析总览
  16. 大数据揭秘区块链人才大迁徙:那个你身边悄悄离职的人去哪儿了?
  17. hdu 1677 Nested Dolls 子串
  18. 什么浏览器有html控制台,HTML标记突破出现在浏览器br,也可作为br,开发者控制台...
  19. 数字化医院中智慧医疗的具体应用
  20. POJ 2375 Cow Ski Area 增加最小边使图强连通

热门文章

  1. 5 - 多元函数微分学
  2. Mac Chrome 访问证书有问题的https网站时无法忽略风险继续浏览
  3. C++读写CSV文件
  4. 老男孩教育-42期-冯家豪-决心书
  5. MySQL-mysql安装步骤
  6. AI基础——一阶谓词逻辑表示法
  7. 跟着团子学SAP PS:企业如何依托信息化工具构建成熟的项目成本管理体系
  8. java处理保留小数点后几位
  9. myeclipse添加oracle,向MyEclipse添加Oracle数据库
  10. c++ 图的连通分量是什么_7.1 图的定义与基本术语