迷你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 ...
随机推荐
- .user.ini和.htaccess
.user.ini .user.ini的使用条件 (1)nginx/apache/IIS,只要是以fastcgi运行的php都可以用这个方法 php配置访问级别 不同的php配置项根据其访问级别具有不 ...
- 在STM32F401上移植uC/OS的一个小问题 [原创]
STM32F401xx是意法半导体新推出的Cortex-M4内核的MCU,相较于已经非常流行的STM32F407xx和STM32F427xx等相同内核的MCU而言,其特点是功耗仅为128uA/MHz, ...
- Docker for windows安装与使用
1.安装Docker for windows之前,需要将系统的hyper-v功能打开 2.下载Docker for windows进行安装 访问url:https://docs.docker.com/ ...
- windows和linux传输小技巧——FTP服务
目录 一.FTP简介 二.匿名用户访问设置 三.设置本地用户验证访问ftp 3.1.修改匿名用户.本地用户登录的默认根目录 四.使用user_list列表 一.FTP简介 FTP服务--用来传输文件的 ...
- Sqli-Labs less38-45
less-38 前置基础知识:堆叠注入 参考链接:https://www.cnblogs.com/lcamry/p/5762905.html 实际上就是多条sql语句一起使用. 在38关源码中加入输出 ...
- Linux UDP服务器编程
UDP主要使用sendto()和recvfrom() recvfrom() 函数原型如下: #include <sys/types.h> #include <sys/socket.h ...
- NOIP 模拟 $20\; \rm 玩具$
题解 \(by\;zj\varphi\) 一道概率与期望好题 对于一棵树,去掉根后所有子树就是一个森林,同理,一个森林加一个根就是一棵树 设 \(f_{i,j}\) 为有 \(i\) 个点的树,高度为 ...
- C#基础知识---Linq操作XML文件
概述 Linq也就是Language Integrated Query的缩写,即语言集成查询,是微软在.Net 3.5中提出的一项新技术. Linq主要包含4个组件---Linq to Objects ...
- spring学习日志二
一.spring依赖注入的方式 1.通过set方法来完成注入 <bean id="student" class="com.zhiyou100.xz.spring.S ...
- Commons-Collections(一)之list
Bag Bag继承自Collection接口,定义了一个集合,该集合会记录对象在集合中出现的次数. 假设你有一个包,包含{a, a, b, c}.调用getCount(a)方法将返回2,调用uniqu ...