DVD管理器

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Scanner;
import java.util.Date;

public class DVDMgr {
	DVDSet a=new DVDSet();

	Scanner input=new Scanner(System.in);
	public void initial(){
		a.name[0]="罗马假日";
		a.state[0]=0;
		a.count[0]=1;
		a.date[0]="2013-7-1";
		a.name[1]="风声鹤唳";
		a.state[1]=1;
		a.name[2]="浪漫满屋";
		a.state[2]=2;
	}
	public  void startMenu (){
		System.out.println("欢迎使用迷你DVD管理器");
		System.out.println("-----------------");
		System.out.println("0.借出排行");
		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("6.借出排行");
		System.out.println("7.退       出");
		System.out.println("------------------");
		System.out.println("请选择:");
		int choice=input.nextInt();
		switch(choice){
		case 1:
			System.out.println("此处实现新增DVD");
			add();
			System.out.println("*********************");
			returnMain();
			break;
		case 2:
			System.out.println("此处实现查看DVD");
			search();
			System.out.println("*********************");
			returnMain();
			break;
		case 3:
			System.out.println("此处实现删除DVD");
			delete();
			System.out.println("**********************");
			returnMain();
			break;
		case 4:
			System.out.println("此处实现借出DVD");
			lend();
			System.out.println("**********************");
			returnMain();
			break;
		case 5:
			System.out.println("此处实现归还DVD");
			returnDVD();
			System.out.println("**********************");
			returnMain();
			break;
		case 6:
			System.out.println("此处实现借出排行");
			list();
			System.out.println("**************************");
			returnMain();
			break;
		case 7:
			System.out.println("谢谢使用!");
			System.out.println("*************************");	
		}	
	}
	
	
	public void returnMain(){
		Scanner input=new Scanner(System.in);
		System.out.println("输入0返回:");
		if(input.nextInt()==0){
			startMenu();
		}else{
			System.out.println("输入错误,异常终止!");
		}
}
	 public void add(){
		 System.out.println("新增DVD");
		 System.out.println("请输入DVD的名字:");
		 String name=input.next();
		 for(int i=0;i<a.name.length;i++){
			 if(a.name[i]==null){
				 a.name[i]=name;
				 a.state[i]=1;
				 System.out.println("新增"+name+"成功!");
				 break;
			 }
		 }
		 System.out.println("**************************");
		 returnMain();
	 }
	 public void search(){
		 System.out.println("查看DVD");
		 System.out.println("序号\t状态\t名称\t借出日期:");
		 for(int i=0;i<a.name.length+1;i++){
			 if(a.name[i]==null){
				 break;
			 }else{
				 if(a.state[i]==0){
					 System.out.println((i+1)+"\t 已经借出\t"+a.name[i]+"\t"+a.date[i]);
			 }else{
				 System.out.println((i+1)+"\t可借\t"+a.name[i]+"\t"+a.date[i]);
			 }
		 }
	 }
		 System.out.println("************************");
		 returnMain();
		
}
	 public void delete(){
                 boolean con=false;
		 System.out.println("删除DVD");
		 System.out.println("请输入DVD名字:");
		 String name=input.next();
		 for(int i=0;i<a.name.length;i++){
			 if(a.name!=null&&a.name[i].equals(name)&&a.state[i]==1){
				 int j=i;
				 while(a.name[j+1]!=null){
					 a.name[j]=a.name[j+1];
					 a.state[j]=a.state[j+1];
					 a.date[j]=a.date[j+1];
					 j++;
				 }
				 a.name[j]=null;
				 a.date[j]=null;
				 
				 System.out.println("删除《"+name+"》成功!");
                                 con=true;
			 }if(a.name[i]!=null&&a.name[i].equals(name)&&a.state[i]==0){
				 System.out.println("《"+name+"》"+"已经借出,不可以删除!");
                                 con=false;
				 break;
			 }if(con=false){
				 System.out.println("没有该DVD的信息!");
                                 break;
			 }
		 }
	 }
	 public void lend(){
		 System.out.println("借出DVD");
		 System.out.println("请输入要借出DVD的名字:");
		 String want=input.next();
		 for(int i=0;i<a.name.length;i++){
			 if(a.name[i].equals(want)&&a.state[i]==1){
				 a.state[i]=0;
				 System.out.println("请输入借出日期(格式为:年-月-日):");
				 a.date[i]=input.next();
				 System.out.println("借出成功!");
				 a.count[i]++;
				 break;
			 }if(a.name.equals(want)&&a.state[i]==0){
				 System.out.println("该DVD已经被借出.");
				 break;
			 }
		 }
		 System.out.println("*********************");
		 returnMain();
				 
	 }
	 public void returnDVD(){
		 long yongjin=0;
		 System.out.println("请输入DVD的名字:");
		 String name=input.next();
		 for(int i=0;i<a.name.length;i++){
			 if(a.name[i].equals(name)&&a.state[i]==0){
				 a.state[i]=1;
				 System.out.println("请输入归还日期(格式为:年-月-日):");
				 String redate=input.next();
				 yongjin=charge(a.date[i],redate);
				 System.out.println("归还成功!");
				 System.out.println("借出日期"+a.date);
				 System.out.println("归还日期"+redate);
				 System.out.println("应付租金:"+yongjin+"元");
				  a.count[i]++;
				 break;
			 }if(a.name[i].equals(name)&&a.state[i]==1){
				 System.out.println("该DVD未被借出,无法继续操作!");
				 break;
			 }else{
				 System.out.println("未找到该DVD的信息!");
			 }
		 }
		 System.out.println("******************************");
		 returnMain();
	 }
	 public long charge(String date1,String date2){
		 long charge=0;
		 SimpleDateFormat sd=new SimpleDateFormat("yyyy-MM-dd");
		 try{
			 Date d1=sd.parse(date1);
			 Date d2=sd.parse(date2);
			 charge=(d2.getTime()-d1.getTime())/(24*60*60*1000);
			 
		 }catch(ParseException e){
			 e.printStackTrace();
		 }
		 return charge;
	 }
	 public void list(){
		 String[]newname=new String[50];
		 int[]newcount=new int[50];
		 for(int i=0;i<a.name.length;i++){
			 newname[i]=a.name[i];
			 newcount[i]=a.count[i];
			 
		 }
		 for(int i=0;i<newname.length-1;i++){
			 for(int j=0;j<newname.length-1-i;j++){
				 if(newcount[i]>newcount[j]){
					 int temp=newcount[i];
					 newcount[i]=newcount[j];
					 newcount[j]=temp;
					 String tempname=newname[i];
					 newname[i]=newname[j];
					 newname[j]=tempname;
				 }
			 }
		 }
		 System.out.println("排行榜:");
		 System.out.println("*************************");
		 System.out.println("次数\t名称");
		 for(int i=0;i<newname.length;i++){
			 if(newname[i]!=null){
				 System.out.println(newcount[i]+"\t《"+newname[i]+"》");
			 }
		 }
		 System.out.println("**********************");
		 returnMain();
	 }
	 
	 }

public class DVDSet {
	String[] name=new String[50];
	int[]state=new int[50];
	String[]date=new String[50];
	int count[]=new int[100];

}

public class Test {
	public static void main(String[] args) {
		DVDMgr dvd=new DVDMgr();
		dvd.initial();
		dvd.startMenu();
	}

}

package 第三章; import java.util.Scanner; public class DVD管理器 { public static void main(String[] args) { Scanner input = new Scanner(System.in); int end=0; //名称,状态,借出日期,借出次数, String name[] =new String[50]; name[0]="三国演义"; name[1]="盗墓笔记"; name[2]="傻子上学"; boolean state[] = new boolean[50]; state[0]=true; state[1]=false; state[2]=true; int date [] = new int[50]; date[0]=0; date[1]=5; date[2]=0; int count[] = new int[50]; count[0]=12; count[1]=0; count[2]=1; String zeng; int dates; do{ 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("6.退出DVD"); System.out.println("-------------------------"); System.out.print("请选择:"); int index=-1; switch(input.nextInt()){ case 1: System.out.println("-->新增DVD"); System.out.print("请输入书名:"); for(int i=0;i<name.length-1;i++){ if(name[i]==null){ index=i; break; } } if(index!=-1){ name[index]=input.next(); state[index]=true; count[index]=0; date[index]=0; System.out.println("新增《"+name[index]+"》成功"); } System.out.println("**************************"); System.out.println("输入0返回"); break; case 2: System.out.println("-->查看DVD"); System.out.println("序号"+"\t"+"状态"+"\t"+" "+"名称"+"\t"+" "+"借出日期"+"\t"+" "+"借出次数"); for(int i=0;i<name.length-1;i++){ if(name[i]==null)break; System.out.print(+(i+1)+"\t"); System.out.print(state[i]==true?"可借阅"+" ":"已借阅"+" "); System.out.print("《"+name[i]+"》"+"\t"); System.out.print(" "+date[i]+"日"+"\t"); System.out.print(count[i]+"次"+"\t"+"\n"); } System.out.println("**************************"); System.out.println("输入0返回"); break; case 3: System.out.println("-->删除DVD"); System.out.print("请输入书名:"); zeng=input.next(); for(int i=0;i<name.length-1;i++){ if(name[i]==null){ System.out.println("这本本书不是我们的,无法删除"); break; } else if(name[i].equals(zeng) && state[i]==false){ System.out.println("找到您要找的书了,但是已借阅无法删除"); break; } else if(name[i].equals(zeng) && state[i]==true){ index=i; System.out.println("删除《"+zeng+"》成功"); break; } } if(index!=-1){ for(int i=index;i<name.length-1;i++){ name[i]=name[i+1]; } name[name.length-1]=null; } else System.out.println("没有您要找的书"); System.out.println("**************************"); System.out.println("输入0返回"); break; case 4: System.out.println("-->借出DVD"); System.out.print("请输入书名:"); zeng=input.next(); for(int i=0;i<name.length-1;i++){ if(name[i]==null){ System.out.println("没有找到您要找的书无法借出"); break; }else if(name[i].equals(zeng) && state[i]==false){ System.out.println("找到您要找的书了,但是库存只有一本已借阅"); break; }else if(name[i].equals(zeng) && state[i]==true){ System.out.print("借出日期:"); dates=input.nextInt(); while(dates<1 || dates>31){ if(dates<1 ||dates>31) System.out.println("请重新输入一月为1~31"); dates=input.nextInt(); } System.out.println("借阅《"+zeng+"》成功"); state[i]=false; date[i]=dates; count[i]++; break; } } System.out.println("**************************"); System.out.println("输入0返回"); break; case 5: System.out.println("-->归还DVD"); System.out.print("请输入书名:"); zeng=input.next(); int jing=0; for(int i=0;i<name.length-1;i++){ if(name[i]==null){ System.out.println("这不是我们的书无需归还"); break; }else if(name[i].equals(zeng) && state[i]==true){ System.out.println("找到您要找的书了,但是未借阅不需要归还"); break; }else if(name[i].equals(zeng) && state[i]==false){ System.out.print("归还日期:"); dates=input.nextInt(); while(dates<1 || dates>31 || dates<date[i]){ if(dates<1 ||dates>31){ System.out.println("输入格式有问题请重新输入一月为1~31"); dates=input.nextInt(); } else if(dates<date[i]){ System.out.println("归还日期必须大于借出日期"); dates=input.nextInt(); } } state[i]=true; jing=(dates-date[i])*1; System.out.println("借阅时间为:"+date[i]); System.out.println("归还时间为:"+dates); System.out.println("借阅租金为:"+jing); System.out.println("归还《"+zeng+"》成功"); date[i]=0; break; } } System.out.println("**************************"); System.out.println("输入0返回"); break; case 6: System.out.println("谢谢使用"); return; } end =input.nextInt(); }while(end==0); } }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值