Mi Ni DVD系统

/*

项目答辩已经过去几天了

今天才来写博客

老师让做Mi NiDVD 系统

实现功能:排行榜,查看,新增,删除,借出,归还,退出!

*/

DVD类:

public class DVD {
        String name;        	//定义DVD名称 
        int state;				//定义DVD借出状态:1为借出:0为没接<默认没借>
        String time;			//定义借出日期
        int count;				//定义DVD借出次数
        
        String user="人在深海";			//管理员帐号
        String password="5202145";		//管理员密码
}

DVD管理类:

import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;
public class DVDM {
	Scanner in=new Scanner(System.in);
	DVD [] dvd=new DVD[1000];
	DVD AS=new DVD();

//	登陆验证
	public void landed(){
		System.out.println("* * * * * * * * * * * * Mi Ni DVD * * * * * * * * * * *");
		boolean is;
		do{
			is=false;
			System.out.println("请输入管理员帐号");
			String name=in.next();
			System.out.println("请输入管理员密码");
			String password=in.next();
			if(name.equalsIgnoreCase(AS.user)&&password.equalsIgnoreCase(AS.password)){
				System.out.println("登陆成功");
				System.out.println("尊敬的"+ name +"欢迎您进入Mn Ni 管理系统\n");
				init();
				show();
			}else{
				System.out.println("帐号与密码不匹配");
				is=true;
			}
		}while(is);
	}
	
//	显示DVD主菜单界面
	public void show(){
		String[] Arrs={"借出排行版","新增DVD","查看DVD","删除DVD","借出DVD","归还DVD","退出"};	//菜单数组
		for(int i=0;i<1;i++){
			System.out.println("迷你DVD管理器");
			System.out.println("* * * * * * * * * * * * * * * * * * * * * * * * *");
				for(int j=0;j<Arrs.length;j++){
					System.out.println((j+1)+"."+Arrs[j]);
				}
			System.out.println("* * * * * * * * * * * * * * * * * * * * * * * * *");
			System.out.println("请选择:");
			boolean is;
			do{
				is=false;
				String user=in.next();
				switch (user) {
					case "1":
							Top();	//排行版
					break;
					case "2":
							add();	//新增
					break;
					case "3":
							see();	//查看
					break;
					case "4":
							deletedvd();	//删除
					break;
					case "5":
							lend();		//借出
					break;
					case "6":
							returnDvd();	//归还
					break;
					case "7":
							System.out.println("谢谢使用!再见");
					break;
					default:
							System.out.println("你的输入有误,请重新输入");
							is=true;
					break;
				}
			}while(is);
		}
	}

//	初始化几张光盘	
	public void init(){
		DVD one=new DVD();
		one.name="一战天下";
		one.state=1;
		one.time="2016-4-13";
		one.count=77;
		dvd[0]=one;
		DVD one1=new DVD();
		one1.name="我的天空";
		one1.state=1;
		one1.time="2016-4-13";
		one1.count=88;
		dvd[1]=one1;
		DVD one2=new DVD();
		one2.name="无尽黑夜";
		dvd[2]=one2;
	}
	
//	借出排行榜
	public void Top(){
		System.out.println("迷你DVD管理器>借出排行榜\n");
		System.out.println("* * * * * * * * * * * * * * * * * * * * * * *");
		for(int i=0;i<dvd.length-1;i++){
			for(int j=0;j<dvd.length-1-i;j++){
				if(dvd[j]!=null&&dvd[j+1]!=null&&dvd[j].count>dvd[j+1].count){
					DVD AS=new DVD();
					AS=dvd[j];
					dvd[j]=dvd[j+1];
					dvd[j+1]=AS;
				}
			}
		}
		System.out.println("借出次数\t\t名称");
		for(int i=dvd.length-1;i>=0;i--){
			if(dvd[i]!=null){
				System.out.println(dvd[i].count+"次\t\t\t"+dvd[i].name);
			}
		}
		System.out.println("* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *");	
		returnMain();
    }
	
//	查看DVD
	public void see(){
		System.out.println("迷你DVD管理器>查看DVD");
		System.out.println("序号\t  状态\t\t借出日期\t借出次数\t   名称");
		for(int i=0;i<dvd.length;i++){
			if(dvd[i]==null){
				break;
			}else if(dvd[i].state==1){
				System.out.println(" "+(i+1)+"\t 已借出\t\t"+dvd[i].time+"\t  "+dvd[i].count+"\t\t< "+dvd[i].name+" >");
			}else if(dvd[i].state==0){
				System.out.println(" "+(i+1)+"\t  可 借\t\t\t\t  "+dvd[i].count+"\t\t< "+dvd[i].name+" >");
			}
		}
		System.out.println("* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *");
        returnMain();
	}
	
//	新增DVD
	public void add(){
		System.out.println("\n迷你DVD管理器>新增DVD");
		System.out.print("请输入新增DVD的名称:");
		boolean is;
		do{
			String name=in.next();
			is=false;
			for(int i=0;i<dvd.length;i++){
				if(dvd[i]==null){
						DVD AS=new DVD();
						dvd[i]=AS;
						dvd[i].name=name;
						System.out.println("新增< "+name+" >成功");
						break;
				}else if(dvd[i].name.equals(name)){
					System.out.println("新增失败!DVD名称与数据库名称相冲突,请重新输入!");
					is=true;
					break;
				}
			}
		}while(is);
		System.out.println("* * * * * * * * * * * * * * * * * * * * * * *");
        returnMain();
	}
	
//	删除DVD
	 public void deletedvd(){
         System.out.println("\n迷你DVD管理器>删除DVD");
         System.out.print("请输入DVD的名称:");
	    	 String name=in.next();
	         for(int i=0;i<dvd.length;i++){
	                 if(dvd[i]!=null&&dvd[i].name.equalsIgnoreCase(name)&& dvd[i].state==0){
	                         int j=i;
	                         while(dvd[j+1]!=null){
	                         	dvd[j]=dvd[j+1]; // 删除元素,元素前移             
	                                 j++;
	                         }
	                         dvd[j]=null;		// 最后一个不为空的元素置空
	                         System.out.println("删除< "+name+" >成功!");
	                         break;
	                 }else if(dvd[i]!=null&&dvd[i].name.equalsIgnoreCase(name)&&dvd[i].state==1){
	                         System.out.println("< "+ name +" >为借出状态,不能删除!请重新输入");
	                         break;
	                 }else if(dvd[i]!=null&&!dvd[i].name.equalsIgnoreCase(name)&&dvd[i].state!=1){
		                     System.out.println("没有找到匹配信息!");
		                     break;
	                 }
	         }
         System.out.println("* * * * * * * * * * * * * * * * * * * * * * *");
         returnMain();
	 }
	
//借出DVD
    public void lend(){
            System.out.println("迷你DVD管理器>借出DVD\n");
            System.out.print("请输入DVD的名称:");
	           String name=in.next();
	            for(int i=0;i<dvd.length;i++){
	            	if(dvd[i]==null){
	            		System.out.println("没有找到信息");
	            		break;
	            	}else if(dvd[i].name.equals(name)&&dvd[i].state==0){
	            		Date df=new Date();
	            		DateFormat time=new SimpleDateFormat("YYYY年MM月dd日hh时mm分ss秒");
	            		System.out.println("当前时间为:"+time.format(df));
	            		System.out.println("请输入借出的日期(年-月-日)不按格式是傻逼");
	            		dvd[i].time=in.next();
	            		System.out.println("< "+ name +" >借出成功");
	            		dvd[i].state=1;
	                    dvd[i].count++;
	                     break;
	            	}else if(dvd[i].name.equals(name)&&dvd[i].state==1){
	            		System.out.println("不好意思!< "+name+" >已被借出");
	            		break;
	            	}           
	            }
            System.out.println("* * * * * * * * * * * * * * * * * * * * * * *");
            returnMain();
    }

//	归还DVD
    public void returnDvd(){
            System.out.println("迷你DVD管理器>归还DVD\n");
            System.out.print("请输入DVD名称:");
            String name=in.next();
            long loan=0; // 租金
            for (int i=0;i<dvd.length;i++){
                    if(dvd[i]==null){
                            System.out.println("没有找到匹配信息!");
                            break;
                    }else if(dvd[i].name.equals(name)&&dvd[i].state==1){
                    	Date df=new Date();
                    	DateFormat time=new SimpleDateFormat("YYYY年MM月dd日hh时mm分ss秒");
                		System.out.println("当前时间为:"+time.format(df));
                    		System.out.println("请输入归还日期(年-月-日)不按格式是傻逼:");
                            String redate=in.next();
                            loan=charge(dvd[i].time, redate);
                            if(loan>=0){
	                            System.out.println("< "+name+" >归还成功");
	                            dvd[i].state=0;
	                            System.out.println("借出日期为:"+dvd[i].time);
	                            System.out.println("归还日期为:"+redate);
	                            System.out.println("应付租金(元):"+loan);
	                            break;
                            }else{
                            	System.out.println("归还日期不符合逻辑");
                            	break;
                            }
                    }else if(dvd[i].name.equals(name)&&dvd[i].state==0){
                            System.out.println("< "+name+" >没有被借出,无法进行归还!");
                            break;
                    }
            } 
            System.out.println("* * * * * * * * * * * * * * * * * * * * * * *");
            returnMain();
    }
 
//	计算时间差
    public long charge(String one,String two){
        SimpleDateFormat sd=new SimpleDateFormat("yyyy-MM-dd");		// 格式化日期    
    	long charge=0;
    	try{
    		Date A=sd.parse(one);
    		Date B=sd.parse(two);
    		charge=(B.getTime()-A.getTime())/(24*60*60*1000);    
    		}catch(ParseException e){
    			System.out.println("日期格式输入错误");
    		}
    		return charge;
    }
    
//	输入任意键返回
	public void returnMain(){
        System.out.print("输入任意键返回:");
        String A=in.next();
        show();
	}
}

DVD测试类:

public class test {
	public static void main(String[] args){
		DVDM one=new DVDM();
		one.landed();
	}
}


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值