迷你DVD
public class DVD {
private int ID;//id
private String status;//状态
private String name;//名称
private String date;//借出日期
private int count;//次数
@Override
public String toString() {
return "DVD{" +
"ID=" + ID +
", status='" + status + '\'' +
", name='" + name + '\'' +
", date='" + date + '\'' +
", count=" + count +
'}';
}
public DVD() {
}
public DVD(int ID, String status, String name, String date, int count) {
this.ID = ID;
this.status = status;
this.name = name;
this.date = date;
this.count = count;
}
public int getID() {
return ID;
}
public void setID(int ID) {
this.ID = ID;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
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;
}
}
package com.zhiyou1002;
import jdk.nashorn.internal.ir.IfNode;
import java.text.SimpleDateFormat;
import java.util.Date;
/**
* @author shkstart
* 工厂
*/
public class Factories {
DVD[] dvds = new DVD[20];
/**
* 利用构造器给DVD初始化
*/
public Factories() {
dvds[0] = new DVD(1, "以借出", "小王子", "2020年10月07日", 999);
dvds[1] = new DVD(2, "可借", "朝花夕拾", "\t\t\t", 999);
dvds[2] = new DVD(3, "可借", "罗马假日", "\t\t\t", 1);
dvds[3] = new DVD(4, "可借", "风声鹤唳", "\t\t\t", 1);
dvds[4] = new DVD(5, "可借", "浪漫满屋", "\t\t\t", 1);
}
/**
* 查看
*/
public void show() {
System.out.println("序号\t状态\t\t\t名称\t\t借出日期\t\t\t借出次数");
for (int i = 0; i < dvds.length; i++) {
if (dvds[i] != null) {
System.out.println(dvds[i].getID() + "\t" + dvds[i].getStatus() + "\t\t" + dvds[i].getName() + "\t\t" + dvds[i].getDate() + "\t" + dvds[i].getCount());
}
}
}
/**
* 判断ID是否重复
*
* @param id
*/
public boolean add_1(int id) {
boolean find = false;
for (int i = 0; i < dvds.length; i++) {
if (dvds[i] != null) {
if (dvds[i].getID() == id) {
find = false;
break;
} else {
//确定id不重复
find = true;
}
}
}
return find;
}
/**
* 判断书是否重复
*
* @param name
* @return
*/
public boolean add_2(String name) {
boolean find = false;
for (int i = 0; i < dvds.length; i++) {
if (dvds[i] != null) {
if (dvds[i].getName().equals(name)) {
find = false;
break;
} else {
//确定id不重复
find = true;
}
}
}
return find;
}
/**
* 新增
*
* @param id
* @param name
*/
public void add(int id, String name) {
for (int i = 0; i < dvds.length; i++) {
if (dvds[i] == null) {
dvds[i] = new DVD(id, "可借", name, "\t\t\t", 0);
System.out.println("新增图书成功!");
break;
}
}
}
/**
* 借出
*
* @param name
*/
public void lend(String name) {
boolean find = false;
for (int i = 0; i < dvds.length; i++) {
if (dvds[i] != null) {
//判断是否有这本书
if (dvds[i].getName().equals(name)) {//找到书籍
System.out.println("找到此书");
find = true;
//判断是否可借
if (dvds[i].getStatus().equals("可借")) {
//借出次数加1
dvds[i].setCount(dvds[i].getCount() + 1);
//设置日期
SimpleDateFormat time = new SimpleDateFormat("yyyy年MM月dd日");
Date date = new Date();
String format = time.format(date);
dvds[i].setDate(format);
//设置状态
dvds[i].setStatus("以借出");
System.out.println("成功借出!");
} else {
System.out.println("此书以借出");
}
}
}
}
if (find) {
} else {
System.out.println("未找到!");
}
}
/**
* 删除
*
* @param id
*/
public void delete(int id) {
boolean find = false;
int index = -1;
for (int i = 0; i < dvds.length; i++) {
if (dvds[i] != null) {
if (dvds[i].getID() == id) {
// dvds[i] = null;
// index = i;
index = i;
find = true;
}
}
//前一个向前移动1为
if (find && index != -1&&index<dvds.length-1) {
dvds[index] = dvds[index + 1];
index++;
}
}
if (find) {
System.out.println("删除成功!");
} else {
System.out.println("删除失败!");
}
}
/**
* 归还
*/
public void returns(String name) {
boolean find = false;
for (int i = 0; i < dvds.length; i++) {
if (dvds[i].getName().equals(name)) {
if (dvds[i].getStatus().equals("以借出")) {
dvds[i].setDate("\t\t\t");//更改日期
dvds[i].setStatus("可借");//更改状态
find = true;
break;
} else {
System.out.println("此书已经存在!");
break;
}
}
}
if (find) {
System.out.println("归还成功!");
} else {
System.out.println("输入错误!");
}
}
}
package com.zhiyou1002;
import java.util.Scanner;
/**
* @author shkstart
* 测试类
*/
public class Text {
public static void main(String[] args) {
Factories factories = new Factories();
Scanner sc = new Scanner(System.in);
dd:
while (true) {
System.out.println("欢迎使用迷你DVD管理器");
System.out.println("************************************************");
System.out.println("<1>新增DVD " + "<2>查看DVD " + "<3>删除DVD " + "<4>借出DVD " + "<5>归还DVD " + "<6>退出DVD ");
System.out.println("************************************************");
int num = sc.nextInt();
switch (num) {
case 1:
System.out.println("➴➵新增DVD");
System.out.println("请输DVD的ID:");
int id = sc.nextInt();
boolean b = factories.add_1(id);
// System.out.println("b = " + b);
if (b) {
System.out.println("请输DVD名称:");
String name = sc.next();
boolean b1 = factories.add_2(name);
// System.out.println("b1 = " + b1);
if (b1) {
factories.add(id, name);
} else {
System.out.println("此书已经存在!");
}
} else {
System.out.println("ID已经存在");
}
break;
case 2:
System.out.println("➶➷查看DVD");
factories.show();
break;
case 3:
System.out.println("➶➷删除DVD");
System.out.println("请输入要删除的DVD的ID:");
int id2 = sc.nextInt();
factories.delete(id2);
break;
case 4:
System.out.println("➶➷借出DVD");
System.out.println("请输入你要借出的DVD名字:");
String name2 = sc.next();
factories.lend(name2);
break;
case 5:
System.out.println("➶➷归还DVD");
System.out.println("请输入要归还的DVD的名字:");
String name3 = sc.next();
factories.returns(name3);
break;
case 6:
break dd;
default:
System.out.println("输入错误!");
}
}
System.out.println("谢谢惠顾!");
}
}
迷你DVD的更多相关文章
- 迷你DVD管理器
import java.text.*; import java.util.*; class DVDSet { String[] name=new String[50]; //定义一个DVD数组 boo ...
- 迷你DVD管理器(Java版)
import java.text.SimpleDateFormat;import java.util.Date;import java.util.Scanner;class Test { pub ...
- 迷你DVD管理器项目
package chapter5; import java.util.*; public class MiniDVD { public static void main(String[] args){ ...
- java基础<迷你DVD系统>
一.写在main方法中 import java.util.*; public class MyDVDMgr { public static void main(String[] args){ Scan ...
- 5、判断、循环、数组综合练习案例(迷你DVD)
迷你dvd代码如下: package com.manager; import java.util.Scanner; public class DVDManage { public static voi ...
- java 迷你DVD管理器
1.DvdSet类 package dvd_01; /** * 定义dvd的一些属性 * @author Administrator * */ public class DvdSet { String ...
- 控制台输出<迷你DVD管理>
使用顺序.选择.循环.跳转语句 数组 功能实现菜单显示和切换 输入的数字不符合要求直接退出程序 用户可以选择新增.查看. 删除.借出.归还.退出 思路分析 使用switch语句实现菜单选择 使用do- ...
- JAVA基础代码分享--DVD管理
问题描述 为某音像店开发一个迷你DVD管理器,最多可存6张DVD,实现碟片的管理. 管理器具备的功能主要有: 1.查看DVD信息. 菜单选择查看功能,展示DVD的信息. 2.新增DVD信息 选择新增功 ...
- 如何用Java实现DVD的一些功能
/* 这个代码中涉及到的知识点很多,大家要慢慢悟!! */ import java.util.*; import java.text.*; class DvdSet { //定义三个属性 String ...
随机推荐
- Java异常02——自定义异常
Error与Exception与自定义异常 Error与Exception Error Exception 自定义异常 快捷键: ctrl + alt + t package exception.d ...
- Java面向对象02——回顾方法(定义、调用)及加深
方法的定义 package oop.demon01; //Demon01 类 public class Demon01 { //main 方法 public stati ...
- Typora加七牛云实现实时图片自动上传
Typora加七牛云实现实时图片自动上传 前言: Typora是一款轻便简洁的Markdown编辑器,支持即时渲染技术,这也是与其他Markdown编辑器最显著的区别.重点是免费! 其风格简约 ...
- Linux系统CPU信息查询方法
lscpu cat /proc/cpuinfo对绝大多数Linux适用,lscpu更简练 cat /proc/cpuinfo 下面是一个实例: processor : 0 vendor_id : Ge ...
- 手把手和你一起实现一个Web框架实战——EzWeb框架(二)[Go语言笔记]Go项目实战
手把手和你一起实现一个Web框架实战--EzWeb框架(二)[Go语言笔记]Go项目实战 代码仓库: github gitee 中文注释,非常详尽,可以配合食用 上一篇文章我们实现了框架的雏形,基本地 ...
- 解决java种mysql中文乱码问题
乱码问题原因有多种,其中有一种是由于MySQL默认使用 ISO-8859-1 ( 即Latin1 ) 字符集,而JAVA内部使用Unicode编码,因此在JAVA中向MYSQL数据库插入数据时,或者读 ...
- sql server时间转换
--getdate 获取当前时间 select getdate() --dateadd 原有时间加: 2013-02-17 13:20:16 此时间加12个月 select dateadd(MONTH ...
- Python小白的数学建模课-18.最小生成树问题
最小生成树(MST)是图论中的基本问题,具有广泛的实际应用,在数学建模中也经常出现. 路线设计.道路规划.官网布局.公交路线.网络设计,都可以转化为最小生成树问题,如要求总线路长度最短.材料最少.成本 ...
- 一文搞懂Java/Spring/Dubbo框架中的SPI机制
几天前和一位前辈聊起了Spring技术,大佬突然说了SPI,作为一个熟练使用Spring的民工,心中一紧,咱也不敢说不懂,而是在聊完之后赶紧打开了浏览器,开始的学习之路,所以也就有了这篇文章.废话不多 ...
- 【springcloud】Eureka服务注册中心搭建
转自:https://blog.csdn.net/pengjunlee/article/details/86538997 Spring Cloud是一系列框架的集合,它利用Spring Boot的开发 ...