项目要求:
在控制台输出一个DVD管理系统
拥有六个功能:
1、新增
2、查看
3、删除
4、借出
5、归还
6、退出

源码:
DVD类:

public class DVD {//DVD类private String name;private int state;private int date;private int count;//private表示私有,增加安全性//无参方法public DVD() {}//有参构造public DVD(String name, int state, int date, int count) {this.name = name;this.state = state;this.date = date;this.count = count;}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 int getDate() {return date;}public void setDate(int date) {this.date = date;}public int getCount() {return count;}public void setCount(int count) {this.count = count;}//toString方法@Overridepublic String toString() {return "DVD [name='" + name +", state=" + state +", date=" + date +", count=" + count +']';}
}

实现类:

public class newGongNeng {DVD[] dvd = new DVD[6];//初始化void chushihuan() {dvd[0] = new DVD("诡秘之主", 1, 0, 18);dvd[1] = new DVD("完美世界", 0, 0, 22);dvd[2] = new DVD("悲惨世界", 0, 0, 10);}void qidong() {Scanner s = new Scanner(System.in);//菜单System.out.println("------------------------------");System.out.println("|-----欢迎使用 DVD租借器-----|");System.out.println("------------------------------");System.out.println("|           1.新增           |");System.out.println("|           2.查看           |");System.out.println("|           3.删除           |");System.out.println("|           4.租借           |");System.out.println("|           5.归还           |");System.out.println("|           6.退出           |");System.out.println("------------------------------");System.out.println("请选择:");int xuhao = s.nextInt();switch (xuhao) {case 1://新增xinzeng();fanhui();break;case 2://查看chakan();fanhui();break;case 3://删除shanchu();fanhui();break;case 4://租借zujie();fanhui();break;case 5://归还guihuan();fanhui();break;case 6://退出System.out.println("再见!");break;default:System.out.println("输入错误!");}}//返回方法void fanhui() {System.out.println("------------------------------------");System.out.println("返回输入0");Scanner s = new Scanner(System.in);//判断输入的是否为0if (s.nextInt() == 0) {qidong();} else {System.out.println("输入错误!");//失败的话重新调用,递归fanhui();}}//新增void xinzeng() {Scanner s = new Scanner(System.in);System.out.println("新增");System.out.print("请输入名称:");//获取输入的名称String name = s.next();//使用for循环查找内容为空的DVDfor (int i = 0; i < dvd.length; i++) {//如果查找到为空的DVD 就将输入名称赋给它if (dvd[i] == null) {dvd[i] = new DVD(name, 0, 0, 0);System.out.println("成功!");break;}}}//查看void chakan() {System.out.println("查看");System.out.println("序号\t状态\t名称\t\t日期\t次数");//循环遍历整个数组for (int i = 0; i < dvd.length; i++) {//如果不为空,将判断是否借出的属性转换为文本if (dvd[i] != null) {String x = null;//如果stata为1 便为已借出if (dvd[i].getState() == 1) {x = "已借出";} else if (dvd[i].getState() == 0) {x = "未借出";}//打印System.out.println((i + 1) + "\t" + "\t" + x + "\t" + dvd[i].getName() + "\t" + dvd[i].getDate() + "号" + "\t" + "\t" + dvd[i].getCount() + "次");}}}//删除void shanchu() {Scanner s = new Scanner(System.in);System.out.println("删除");System.out.print("删除的名称:");//获得要删除的名称String name = s.next();//设一个o判断条件int o = -1;//遍历寻找名称对应的DVDfor (int i = 0; i < dvd.length; i++) {if (dvd[i] != null) {if (dvd[i].getName().equals(name)) {o = i;break;}}}//如果找到对应DVDif (o != -1) {//如果已借出,则失败if (dvd[o].getState() == 1) {System.out.println("DVD已借出,暂时不能删除.");} else if (dvd[o].getState() == 0) {System.out.println("删除成功!");dvd[o] = null;}} else if (o == -1) {//没有找到System.out.println("没有此DVD");}}void zujie() {Scanner s = new Scanner(System.in);System.out.println("租借");System.out.print("输入租借的名称:");String name = s.next();int o = -1;for (int i = 0; i < dvd.length; i++) {if (dvd[i] != null) {if (dvd[i].getName().equals(name)) {o = 1;break;}}}if (o != -1) {if (dvd[o].getState() == 1) {System.out.println("DVD已借出.");} else if (dvd[o].getState() == 0) {System.out.print("输入日期:");int date = s.nextInt();dvd[o].setDate(date);dvd[o].setCount(dvd[o].getCount() + 1);dvd[o].setState(1);System.out.println("租借成功 !");}} else if (o == -1) {System.out.println("没有此DVD");}}void guihuan() {Scanner s = new Scanner(System.in);System.out.println("归还");System.out.print("归还名称:");String name = s.next();int o = -1;for (int i = 0; i < dvd.length; i++) {if (dvd[i] != null) {if (dvd[i].getName().equals(name)) {o = 1;break;}}}if (o != -1) {if (dvd[o].getState() == 1) {System.out.print("输入日期 :");int data = s.nextInt();System.out.println("租金为:" + (data - dvd[o].getDate()) * 2 + "元");dvd[o].setState(0);dvd[o].setDate(0);} else if (dvd[o].getState() == 0) {System.out.println("此DVD没有借出,归还失败");}} else if (o == -1) {System.out.println("没有此DVD");}}}

Java DVD租借系统相关推荐

  1. Java小程序,编写一个迷你DVD租借系统(控制台输出)

    用Java编写一个迷你DVD租借系统 要求实现以下功能: 借出排行榜 新 增 DVD 查 看 DVD 删 除 DVD 借 出 DVD 归 还 DVD 退 出 需要编写三个类 DVDSet类(定义存放的 ...

  2. 基于JAVA电视设备租借系统计算机毕业设计源码+系统+lw文档+部署

    基于JAVA电视设备租借系统计算机毕业设计源码+系统+lw文档+部署 基于JAVA电视设备租借系统计算机毕业设计源码+系统+lw文档+部署 本源码技术栈: 项目架构:B/S架构 开发语言:Java语言 ...

  3. java版DVD影碟片出租赁系统C/S模式 java电影购票系统课程设计

    系统采用c/s架构,当然,你可以服务端.客户端都在同一台电脑上运行: 也可以在同一局域网内服务端.客户端在其它不同电脑上运行: 如果你有云服务器,可将Service端代码部署至云服务器上,客户端在任何 ...

  4. javaweb JAVA JSP自行车租赁系统(租赁系统)自行车租赁 汽车租赁 电车租赁系统 租借系统

    javaweb JAVA JSP自行车租赁系统(租赁系统)自行车租赁 汽车租赁 电车租赁系统 租借系统 protected void doGet(HttpServletRequest req, Htt ...

  5. 计算机毕业设计Java自行车租借管理系统(源码+系统+mysql数据库+Lw文档)

    计算机毕业设计Java自行车租借管理系统(源码+系统+mysql数据库+Lw文档) 计算机毕业设计Java自行车租借管理系统(源码+系统+mysql数据库+Lw文档) 本源码技术栈: 项目架构:B/S ...

  6. java毕业设计视频点播系统Mybatis+系统+数据库+调试部署

    java毕业设计视频点播系统Mybatis+系统+数据库+调试部署 java毕业设计视频点播系统Mybatis+系统+数据库+调试部署 本源码技术栈: 项目架构:B/S架构 开发语言:Java语言 开 ...

  7. 计算机毕业设计Java电子病历系统(源码+系统+mysql数据库+lw文档)

    计算机毕业设计Java电子病历系统(源码+系统+mysql数据库+lw文档) 计算机毕业设计Java电子病历系统(源码+系统+mysql数据库+lw文档) 本源码技术栈: 项目架构:B/S架构 开发语 ...

  8. 基于JAVA自考学位系统计算机毕业设计源码+系统+mysql数据库+lw文档+部署

    基于JAVA自考学位系统计算机毕业设计源码+系统+mysql数据库+lw文档+部署 基于JAVA自考学位系统计算机毕业设计源码+系统+mysql数据库+lw文档+部署 本源码技术栈: 项目架构:B/S ...

  9. Java基础知识(重点)总结(Java学习方法、系统学习路线)

    参考:https://www.cnblogs.com/schiller-hu/p/10662429.html Java自学网:https://www.51zxw.net/list.aspx?cid=3 ...

最新文章

  1. C# 读取Excel中的时间
  2. 执行删除操作返回没被删除的信息
  3. linux磁盘冗余阵列
  4. javafx11 最佳实践_JavaFX移动应用程序最佳实践,第2部分
  5. IDEA报错: Port already in use: 2100
  6. linux禁ping禁什么端口,Linux配置防火墙,开启80,22等常用端口禁止ping等
  7. Oracle SqlLoader使用
  8. linux命令 sync,linux sync命令详解
  9. 10种web前端开发可视化在线工具大全
  10. 华为认证计算机英语,hcna考试是英文还是中文
  11. 把人脑“森林”上传到计算机:人类脑计划只是一个科幻野心?
  12. 算法 代码拷来终觉浅,绝知此事要躬行
  13. SpringBoot 使用validation数据校验-超级详细 - 第406篇
  14. oracle回撤,Oracle使用排列组合计算最大回撤幅度
  15. 厦门的几家公司,软件测试岗位,帮忙推荐下哪家好?
  16. 中间件漏洞(Apache篇)
  17. JS.Razor.CSHtml结合使用
  18. Key Points on Innovation from Peter Drucker
  19. 正达信通ZedaIOT物联网平台设备管理功能浅析
  20. 深入学习图像处理——图像相似度算法

热门文章

  1. 快速上手TiDB,体验全新的一栈式实时HTAP数据库
  2. pcl怎么根据深度显示颜色_大麦和黄牛再惹众怒,PCL全明星上表现不佳
  3. 路德维希·冯·米塞斯
  4. 初学古琴怎么学?古琴入门基础知识
  5. 倾斜摄影自动化建模成果的数据组织和单体化
  6. 彻底关闭华为手机系统更新教程!防止系统自动更新!最详细教程!
  7. 国标28181:什么是RTP协议与RTCP协议
  8. 不努力的程序员注定被裁员
  9. 韩语计算机术语大全,韩语学习:韩语计算机、互联网术语 - 英语家园
  10. 提高企业竞争力,如何开展知识管理工作?