package
com;
import
java.text.ParseException;
import
java.text.SimpleDateFormat;
import
java.util.Scanner;
import
bla.DVDMgr;
public
class
MiniDVDManager
{
public
class
DVDSet
{
String[]
name
=
new
String[
500];
int[]
state
=
new
int[
500];
String[]
date
=
new
String[
500];
}
DVDSet
dvd
=
new
DVDSet();
public
void
initial(){
dvd.name[
0]
=
"敢死队3";
//第一张DVD
dvd.state[
0]
=
0;
dvd.date[
0]
=
"2014-9-5";
dvd.name[
1]
=
"秦时明月之龙腾万里";
//第二张DVD
dvd.state[
1]
=
0;
dvd.date[
1]
=
"2014-9-5";
dvd.name[
2]
=
"小时代3";
//第一张DVD
dvd.state[
2]
=
1;
dvd.date[
2]
=
"2014-9-5";
}
public
void
startMenu(){
System.out.println(
"欢迎使用迷你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(
"0.退出");
System.out.println(
"--------------------------------------");
System.out.println(
"请选择:");
Scanner
input
=
new
Scanner(
System.in);
int
choice
=input.nextInt();
choice(choice);
}
public
int
choice(
int
inputyourchoice){
switch(inputyourchoice){
case
1:
System.out.println(
"此处实现新增DVD");
System.out.println(
"--------------------------------------");
add();
returnMain();
break;
case
2:
System.out.println(
"此处实现查看DVD");
System.out.println(
"--------------------------------------");
search();
returnMain();
break;
case
3:
System.out.println(
"此处实现删除DVD");
System.out.println(
"--------------------------------------");
delete();
returnMain();
break;
case
4:
System.out.println(
"此处实现借出DVD");
System.out.println(
"--------------------------------------");
lend();
returnMain();
break;
case
5:
System.out.println(
"此处实现归还DVD");
System.out.println(
"--------------------------------------");
returnDvd();
returnMain();
break;
case
0:
System.out.println(
"已经退出");
System.out.println(
"--------------------------------------");
break;
default:
}
return
inputyourchoice;
}
public
void
returnMain(){
Scanner
input
=
new
Scanner(
System.in);
System.out.println(
"输入0返回");
if(input.nextInt()
==
0){
startMenu();
}
else{
System.out.println(
"输入错误,异常终止");
}
}
public
void
search(){
System.out.println(
"序号"
+
"\t状态"
+
"\t名称");
for(
int
i
=
0;i
<</span>dvd.name.length;i++){
if(dvd.name[i]
==
null){
break;
}
else
if(dvd.state[i]
==
0){
System.out.println((i
+1)
+
"\t可借出\t"
+
"《"
+dvd.name[i]
+
"》\t"
);
}
else
if(dvd.state[i]
==
1){
System.out.println((i
+1)
+
"\t已借出\t"
+
"《"
+dvd.name[i]
+
"》\t"
);
}
}
}
public
void
add(){
System.out.println(
"请输入新增DVD名称:");
Scanner
input
=
new
Scanner(
System.in);
for(
int
i
=
0;i
<</span>dvd.name.length;i++){
if(dvd.name[i]
==
null){
//dvd.state用的是默认值
dvd.name[i]
=input.next();
dvd.date[i]
=
"2014-9-5";
System.out.println(
"新增"
+
"《"
+dvd.name[i]
+
"》"
+
"成功");
break;
}
}
}
public
void
delete(){
System.out.println(
"请输入您想要删除的DVD的名称:");
Scanner
input
=
new
Scanner(
System.in);
String
deletename
=input.next();
for(
int
i
=
0;i
<</span>dvd.name.length;i++){
if(dvd.name[i]
!=
null
&&dvd.name[i].equalsIgnoreCase(deletename)
&&dvd.state[i]
==
1){
int
j
=i;
//查找到每个元素前移一位
while(dvd.name[i]
!=
null){
dvd.date[i]
=
dvd.date[i
+1];
dvd.name[i]
=
dvd.name[i
+1];
dvd.state[i]
=dvd.state[i
+1];
j
++;
}
//最后一个不为空的元素置空
dvd.name[j]
=
null;
dvd.date[j]
=
null;
System.out.println(
"删除"
+
"《"
+deletename
+
"》"
+
"成功");
break;
}
else
if(dvd.name[i]
!=
null
&&dvd.name[i].equalsIgnoreCase(deletename)
&&dvd.state[i]
==
0){
System.out.println(
"《"
+deletename
+
"》"
+
"为借出状态,不能删除");
break;
}
}
}
public
void
lend(){
System.out.println(
"请输入要借出的DVD名称:");
Scanner
input
=
new
Scanner(
System.in);
String
lendname
=input.next();
for(
int
i
=
0;i
<</span>dvd.name.length;i++){
//
if(dvd.name[i]
==
null){
System.out.println(
"无"
+lendname
+
"匹配消息");
break;
}
else
if(dvd.name[i].equalsIgnoreCase(lendname)
&&dvd.state[i]
==
1){
//已经借出
System.out.println(
"该"
+lendname
+
"已经借出");
break;
}
else
if(dvd.name[i].equalsIgnoreCase(lendname)
&&dvd.state[i]
==
0){
dvd.state[i]
=
1;
System.out.println(lendname
+
"借出成功");
break;
}
public
void
returnDvd(){
System.out.println(
"请输入要归还你的DVD名称:");
Scanner
input
=
new
Scanner(
System.in);
String
returNname
=input.next();
for(
int
i
=
0;i
<</span>dvd.name.length;i++){
if(dvd.name[i].equalsIgnoreCase(returNname)
&&dvd.state[i]
==
1){
//定义一个数组将归还的DVD放到最末尾
if(dvd.name[i]
!=
null){
dvd.name[i]
=returNname;
dvd.state[i]
=
0;
//输入日期以结账用
System.out.println(
"输入今天的日期:");
String
dstr1
=dvd.date[i];
String
dstr2
=input.next();
System.out.println(
"租金:"
+charge(dstr1,dstr2)
+
"元");
System.out.println(dvd.name[i]
+
"归还成功");
break;
}
}
else
if(dvd.name[i].equalsIgnoreCase(returNname)
&&dvd.state[i]
==
0){
System.out.println(
"该"
+returNname
+
"未借出");
break;
}
}
}
public
long
charge(
String
dstr1,
String
dstr2){
long
charge
=
0;
SimpleDateFormat
sd
=
new
SimpleDateFormat(
"yyyy-MM-dd");
try{
java.util.Date
d1
=sd.parse(dstr1);
java.util.Date
d2
=sd.parse(dstr2);
charge
=((d2.getTime()
-d1.getTime())/(
24
*
60
*
60
*
1000));
}
catch(ParseException
e){
e.printStackTrace();
}
return
charge;
}
public
static
void
main(
String[]
args)
{
// TODO Auto-generated method stub
DVDMgr
dm
=
new
DVDMgr();
//首先初始化
dm.initial();
//进入主菜单
dm.startMenu();
}
}