1 importjava.text.ParseException;2 importjava.text.SimpleDateFormat;3 importjava.util.Date;4 importjava.util.Scanner;5 importjava.util.logging.SimpleFormatter;6 //Dvd管理类

7 public classDvdMgr {8 Scanner sc=newScanner(System.in);9 SimpleDateFormat sd=new SimpleDateFormat("yyyy-mm-dd");10 public DvdSet[] dvds=new DvdSet[5];11 //初始化方法,先向数组中放入几张DVD

12 public voidinitial() {13 dvds[0]=new DvdSet("迪迦",true," ",5);14 dvds[1]=new DvdSet("戴拿",true," ",2);15 dvds[2]=new DvdSet("盖亚",true," ",3);16 }17 //显示菜单方法

18 public voidshowMenu() {19 initial();//调用初始化

20 boolean flag=true;21 do{22 System.out.println("***************************");23 System.out.println("1.插入\n2.查看\n3.删除\n4.借出\n5.归还\n6.退出\n0.排行榜");24 System.out.println("***************************");25 System.out.println("请选择:");26 int choice=sc.nextInt();27 switch(choice) {28 case 1:29 System.out.println("插入操作");30 System.out.println("请输入待插入的Dvd名称:");31 String name1=sc.next();32 DvdSet dvd=findByName(name1);33 if(dvd!=null) {34 System.out.println("DVD已存在,不可再插入。");35 }else{36 //卡卡卡卡卡卡37 //这边卡了一下,要注意插入操作的时候,插入的是DVD对象,而不只是它 的名字

38 DvdSet newDvd =new DvdSet(name1,true," ",0);39 add(newDvd);40 System.out.println("添加成功");41 }42 break;43 case 2:44 System.out.println("查看操作");45 lookAll();46 break;47 case 3://删除操作和插入操作的步骤是有点相似的,有些代码可以复制过来48 //核心的部分就得自己好好想想了

49 System.out.println("删除操作");50 System.out.println("请输入待删除的Dvd名称:");51 String name3=sc.next();52 //findByName方法是在数组中通过名字来找这个对象,找到了返回对象,未找到返回null

53 DvdSet dvd3=findByName(name3);54 //这里跟插入操作一样,要考虑一些情况,是否存在,以及状态

55 if(dvd3==null) {56 System.out.println("未找到此Dvd");57 }else if(dvd3.state==false) {58 System.out.println("此DVD已借出,不可删除");59 }else{60 delete(name3);61 System.out.println("删除成功");62 }63 break;64 case 4:65 System.out.println("借出操作");66 lend();67 break;68 case 5:69 System.out.println("归还操作");70 back();71 break;72 case 6:73 System.out.println("退出操作");74 System.out.println("已退出");75 //可以在退出这里改变标志flag,跳出循环

76 flag=false;77 break;78 case 0:79 System.out.println("排行榜操作");80 sort();81 break;82 }83 if(flag==true) {84 System.out.println("输入0返回:");85 if(sc.nextInt()==0)continue;86 }87 }while(flag);88 }89 //排行榜没什么,就一个冒泡排序

90 private voidsort() {91 for(int i=0;i

94 if(dvds[j]!=null&&dvds[j+1]!=null) {95 if(dvds[j].counts

121 dvd.state=true;122 //这边用getTime计算毫秒数,就可以算出接触的时间了

123 double money=(double)(1.5*((d2.getTime()-d1.getTime())/(1000*60*60*24)));124 System.out.println("应付:"+money);125 } catch(ParseException e) {126 //TODO Auto-generated catch block

127 e.printStackTrace();128 }129

130

131 }132

133 }134 private voidlend() {135 System.out.println("请输入要借的DVD名称");136 String name=sc.next();137 DvdSet dvd=findByName(name);138 if(dvd==null) {139 System.out.println("未找到此DVD");140 }else if(dvd.state==false) {141 System.out.println("此DVD已借出");142 }else{143 System.out.println("借出"+dvd.name+"成功");144 System.out.println("请输入借出日期:");145 dvd.date=sc.next();146 //借出时要改变状态,次数++

147 dvd.state=false;148 dvd.counts++;149 }150 }151

152

153 private voiddelete(String name) {154

155 int index=findByIndex(name);156 System.out.println(index);157 //删除这要注意i知道数组倒数第二的位置

158 for(int i=index;i

162 dvds[dvds.length-1]=null;163

164 }165 //找出要删元素的下标,并返回

166 private intfindByIndex(String name) {167 int index=-1;168 for(int i=0;i

176 }177 }178 returnindex;179 }180 private voidlookAll() {181 System.out.println("序号\t名称\t状态\t日期\t次数");182 //卡卡卡卡卡

183 for(int i=0;i

189 }190 private voidadd(DvdSet newDvds) {191 //判断是否满了,满了则扩容

192 if(dvds[dvds.length-1]!=null) {193 DvdSet[] newDvd=new DvdSet[dvds.length+10];194 int i=0;195 for(;i

199 dvds=newDvd;200 }else{201 //卡卡卡卡卡

202 for(int i=0;i

210 }211 privateDvdSet findByName(String name) {212 DvdSet dvd=null;213 for(int i=0;i

223 }224 }

java dvd 管理_Java学习案例一:DVD管理器相关推荐

  1. linux软件安装管理ppt,学习情境3 安装管理linux软件.ppt

    学习情境3 安装管理linux软件.ppt 学习情境3 安装管理linux软件 压缩解压 为什么要压缩: 节约空间 打包 软件下载/安装 压缩解压 常见文件后缀名: *.Z compress程序的压缩 ...

  2. 学习java的步骤_java学习的基本步骤

    Java是一个通用的编程语言,其实可以干很多事,怎么学Java就看怎么用了.但有一些基本的步骤: 熟悉一种文本编辑器, 比如:Vim, Emacs, Notepad++, TextMate等.知道哪些 ...

  3. java 知识积累_java学习知识积累-spring常用注解

    java学习知识积累-spring常用注解 类的分层注解,由于我们后台开发都是分为三层进行开发的,所以Spring框架提供了三种对于不同层的注解方式: 控制层:@Controller 服务层:@Ser ...

  4. java group布局_Java 的swing.GroupLayout布局管理器的使用方法和实例

    GroupLayout 是一个 LayoutManager,它将组件按层次分组,以决定它们在 Container 中的位置.GroupLayout 主要供生成器使用,但也可以手工编码.分组由 Grou ...

  5. JavaWeb学习-案例练习-图书管理后台-5- 完成图书删除功能

    继续来做案例练习,本篇学习如何删除图书,也就是在list.jsp页面的图书列表中,点击删除按钮,这条图书记录信息就从列表消失,然后相当于刷新当前页面,列表就少了一条图书记录. 1.需求场景 例如把Py ...

  6. JavaWeb学习-案例练习-图书管理前台-9-分页功能实现

    前面一篇完成了多条件的查询,这篇开始学习分页,很多网页是默认显示20条数据,想看更多数据,就通过点击下一页的方式实现.这篇就来模拟这个分页实现过程. 1.项目环境准备 之前我们实现的都是图书管理后台功 ...

  7. java mysql分层_java学习(十三)采用MVC分层思想实现转账功能

    本文只要使用mvc分层思想完成转账操作.一旦转账之后,汇款人和收款人的金额发生变化.因此,过程中必须采用事务管理. 1.MVC思想 1.1 发展历程 1.1.1 servlet 缺点:生成html内容 ...

  8. JavaWeb学习-案例练习-图书管理前台-10- 图书详情页的实现

    前面一篇实现了前端图书列表的分页操作,可以点击上一页和下一页,这个我们实现每个页面显示4本书,实际开发中,一般设置20条记录或者40条记录,这个实现原理是一样的.这篇来学习,在前端页面点击这本书的名称 ...

  9. java 组件 接口_java学习之图形用户接口AWT组件部分

    记录学习Java私塾Java视频培训教程中级-9 图形用户接口AWT组件部分 学习视频资源分享: 地址:http://pan.baidu.com/s/1eSDiZAi 密码:lvy6 PS:视频的画质 ...

最新文章

  1. 零知识证明实践教程,第三部分
  2. 云平台设计系统,助力业务快速开发
  3. java内存分配和回收策略
  4. ANDROID内核和驱动篇-ANDROID内核介绍(转)
  5. 使用web3.js进行开发
  6. 【Redis】3. Redis数据类型 Hash
  7. [j2me]手机也可以玩播客(Podcast)! Geek开发说明[开源]
  8. HALCON示例程序texture.hdev检测树木
  9. 洛谷P1074:靶形数独(搜索、剪枝)
  10. css中会计算的属性,2017年12月聚合文章--calc() ---一个会计算的css属性 | 码友网
  11. 【计蒜客信息学模拟赛1月月赛 - B】蒜头套圈圈(贪心,前缀最大值)
  12. 如何安装python3.8.2_Python 3.8.2详细图文安装教程(附安装包)
  13. Git版本控制:Github的使用之 多人协作及参与项目
  14. HCIE-Security Day35:IPSec-NAT-T
  15. python中for else举例_Python 中for...esle和while...else语法
  16. 基于simhash的文本去重原理
  17. Pytorch 中的 forward理解
  18. 原创 | k8s系列教程一:开篇
  19. 人工智能在量化领域应用相关论文整理
  20. leetcode 5233 Maximum Profit in Job Scheduling

热门文章

  1. 利用python下载我们想听的歌曲,速度超快
  2. 用CPU大法忽悠ChatGPT写前端,油猴子工具库+1
  3. opencv生成单位矩阵
  4. HP Proliant DL388 Gen9 服务器 BIOS 设置丢失,win2008 r2启动引导文件修复
  5. 【论文阅读】PSF-LO: Parameterized Semantic Features Based Lidar Odometry
  6. pscad 与 matlab 接口,PSCAD与MATLAB的接口问题
  7. 网络中加入注意力机制SE模块
  8. ti ds90ub953 与ds90ub954 的调试总结
  9. MAC忘记本地数据库密码的解决方法
  10. 软件测试-常见BUG分享