迷你Dvd管理系统
2016-08-01 19:55
351 查看
Dvd类
DvdManage类
DvdTest类
package com.neusoft; /** * dvd类 * */ public class Dvd { public String dvdName;//dvd名称 public int dvdState;//租借状态(0:可借 1:已借) public String outTime;//借出日期 public int price;//租金 public int count;//租借次数 }
DvdManage类
package com.neusoft; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Scanner; /** * dvd系统管理类 * * @author Administrator * */ public class DvdManage { Dvd[] dvds = null;// 声明dvd对象数组 // 声明DVD对象 Dvd dvd = null; Scanner input = new Scanner(System.in); /** * dvd信息初始化 */ private void init() { dvds = new Dvd[10]; dvds[0] = new Dvd(); dvds[0].dvdName = "ccccc"; dvds[0].dvdState = 0; dvds[0].outTime = ""; dvds[0].price = 1; dvds[0].count = 1; dvds[1] = new Dvd(); dvds[1].dvdName = "aaaaa"; dvds[1].dvdState = 0; dvds[1].outTime = ""; dvds[1].price = 2; dvds[1].count = 2; dvds[2] = new Dvd(); dvds[2].dvdName = "bbbbb"; dvds[2].dvdState = 0; dvds[2].outTime = ""; dvds[2].price = 2; dvds[2].count = 3; } /** * 查看dvd信息 */ private void showDvdInfo() { // 在循环中变量对象数组查询dvd信息 System.out.println("名称\t租借状态\t租借日期\t租金\t次数"); for (int i = 0; i < dvds.length; i++) { if (dvds[i] != null) { System.out.println(dvds[i].dvdName + "\t" + (dvds[i].dvdState == 0 ? "可借" : "已借") + "\t" + dvds[i].outTime + "\t" + dvds[i].price + "\t" + dvds[0].count); } } } /** * 系统主菜单 */ private void menu() { System.out.println("欢迎使用XXX迷你DVD管理系统"); System.out.println("==========================="); 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、查看dvd排行榜"); System.out.println("0、退出"); System.out.print("请输入选择功能:"); } /** * 根据名称查询dvd是否存在 * * @param name * @return */ private boolean isExist(String name) { boolean isFind = false; for (int i = 0; i < dvds.length; i++) { // 判断dvd是否存在 if (dvds[i] != null) { if (dvds[i].dvdName.equals(name)) { isFind = true; } } } return isFind; } /** * 系统操作的方法 */ public void operation() { String name = ""; // 定义用户选择变量 int choice = 0; // 调用初始化 this.init(); // 显示系统菜单 // 只要用户不输入0.操作功能后自动回到主菜单,进行下一步操作 do { this.menu(); choice = input.nextInt(); switch (choice) { case 1: System.out.println("请输入要添加的dvd名称:"); name = input.next(); boolean isFlag = this.isExist(name); if (!isFlag) { // 创建DVD对象 dvd = new Dvd(); dvd.dvdName = name; dvd.price = 2; dvd.count = 0; dvd.dvdState = 0; dvd.outTime = ""; addDvd(dvd); } else { System.out.println("您输入的碟片已存在!~"); } break; case 2: showDvdList(); break; case 3: // 调用借出DVD的方法 System.out.println("请输入要借出的DVD名称:"); name = input.next(); isFlag = this.isExist(name); if (isFlag) { dvdOut(name); } else { System.out.println("您要借出的DVD不存在!~"); } break; case 4: System.out.println("请输入要借出的DVD名称:"); name = input.next(); isFlag = this.isExist(name); if (isFlag) { returnDvd(name); } else { System.out.println("您要归还的DVD不存在!~"); } break; case 5: System.out.println("请输入要借出的DVD名称:"); name = input.next(); isFlag = this.isExist(name); if (isFlag) { delDvd(name); } break; case 6: break; case 0: System.out.println("谢谢使用"); return; } } while (choice != 0); } /** * 删除DVD * * @param name */ private void delDvd(String name) { for (int i = 0; i < dvds.length; i++) { if (dvds[i] != null) { if (dvds[i].dvdName.equals(name)) { dvds[i] = null; break; } } } for (int i = 0; i < dvds.length; i++) { if (dvds[i] == null) { if (dvds[i + 1] != null) { dvds[i] = dvds[i + 1]; dvds[i + 1] = null; } else { break; } } } } /** * 归还DVD * * @param name */ private void returnDvd(String name) { for (int i = 0; i < dvds.length; i++) { if (dvds[i] != null) { if (dvds[i].dvdName.equals(name)) { dvd = dvds[i]; break; } } } // 计算租金 Date date = new Date(); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); String curDate = sdf.format(date); try { Date date1 = sdf.parse(curDate); Date date2 = sdf.parse(dvd.outTime); long diff = (date1.getTime() - date2.getTime()) / (1000 * 60 * 60 * 24); System.out.println("您需要付的租金为:" + (diff * dvd.price)); } catch (ParseException e) { // TODO Auto-generated catch block e.printStackTrace(); } dvd.outTime = ""; dvd.dvdState = 0; System.out.println(dvd.dvdName + "归还成功!~"); } /** * 根据DVD名称判断该DVD是否可借 * * @param name * @return */ private void dvdOut(String name) { for (int i = 0; i < dvds.length; i++) { if (dvds[i] != null) { if (dvds[i].dvdName.equals(name)) { dvd = dvds[i]; break; } } } if (dvd.dvdState == 0) { Date date = new Date(); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); String curDate = sdf.format(date); dvd.outTime = curDate; dvd.dvdState = 1; dvd.count += 1; } else { System.out.println("您要借出的DVD尚未归还!~"); } } private void showDvdList() { System.out.println("DVD名称\t状态\t出租日期\t租金\t租借次数"); for (Dvd dvd : dvds) { if (dvd != null) { System.out.println(dvd.dvdName + "\t" + (dvd.dvdState == 0 ? "未借" : "已借") + "\t" + dvd.outTime + "\t" + dvd.price + "\t" + dvd.count); } } } private void addDvd(Dvd newDvd) { for (int i = 0; i < dvds.length; i++) { if (dvds[i] == null) { dvds[i] = newDvd; break; } } } }
DvdTest类
package com.neusoft; /** * dvd系统测试类 * */ public class DvdTest { public static void main(String[] args) { // //获取当前计算机系统时间 // Date curDate = new Date(); // System.out.println(curDate); // //常用的日期格式。也是很多系统中承认的格式:yyyy-MM-dd HH:mm:dd或者:yyyy/MM/dd HH:mm:dd // //格式化时间 // SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); // String newDate = sdf.format(curDate); // System.out.println(newDate); // // String outTime = "2016-07-29"; // try { // Date date1 = sdf.parse(newDate); // Date date2 = sdf.parse(outTime); // long diff = (date1.getTime()-date2.getTime())/(1000*60*60*24); // System.out.println(diff); // } catch (ParseException e) { // // TODO Auto-generated catch block // e.printStackTrace(); // } DvdManage manage = new DvdManage(); manage.operation(); } }
相关文章推荐
- java DVD迷你管理系统
- 迷你DVD管理系统
- 黑马程序员:DVD管理系统项目之三--使用io流模拟迷你SQL
- 迷你DVD管理系统
- 迷你DVD管理系统
- JAVA项目实战<迷你DVD管理系统>
- Java迷你DVD管理系统
- java DVD迷你管理系统
- DVD管理系统:为某音像店开发一个迷你DVD管理器,实现DVD碟片的管理,包括如下功能:
- 迷你DVD租用管理系统
- 『系统管理』把Redhat的多个CD安装光盘手工合并成1DVD的方法
- dvd管理系统
- ssm框架创建简单的DVD管理系统(一)项目简介
- 迷你型DVD管理系统
- java基础<迷你DVD系统>
- 小项目----DVD管理系统
- 黑马程序员: DVD管理系统项目之二--集合排序的动态刷新问题
- 从零开始学java 之 DVD的增删改查管理系统(方法,界面,数据库相分离)用IO流写入文件代替数据库
- DVD管理系统
- 黑马程序员:DVD管理系统项目之一--核心集合的选择问题