迷你DVD管理系统

功能如下:

新增、查看、删除、借出、归还、退出。
之前修改了很多遍,重写了几次,但是至今没有发现为什么我之前的编译不出来,同时也没有明白后面为什么会成功完成全部功能。尴尬


源代码如下:





import java.util.Scanner;

public class Test {
	public static void main(String [] args){
		Scanner input = new Scanner(System.in);
		/*
		 * 借出状态、名称、日期、借出次数
		 */
		int index = -1;
		boolean [] status = new boolean [7];//借出状态
		String [] names = new String [7];//名称
		int [] data = new int [7];//日期
		int [] account = new int [7];//次数
		
		status [0] = false;
		names [0] = "罗马假日";
		data [0] = 1;
		account [0] = 15;
		
		status [1] = false;
		names [1] = "风声鹤唳";
		data [1] = 0;
		account [1] = 12;
		
		status [2] = false;
		names [2] = "浪漫满屋";
		data [2] = 0;
		account [2] = 30;
		String name;
		int time;
		boolean exit = false;
		boolean isZero;
		boolean isRight;//借书时间是否正确
		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 choose = input.nextInt();
			switch(choose){
				case 1:
					System.out.println("--->新增DVD");
					for(int i = 0;i<names.length;i++){
						if(names [i] ==null){
							index = i;
							break;
						}
					}
					if(index!=-1){
						System.out.print("请输入DVD名称:");			
						names [index] = input.next();
						System.out.println("新增《"+names[index]+"》成功!");
						}
					break;
				case 2:
					System.out.println("--->查看DVD");
					System.out.println("序号\t状态\t名称\t\t借出日期\t借出次数");
					for(int i = 0;i<names.length;i++){
						if(names [i] ==null){
							index = i;
							break;
						}
					}
					for(int i=0;i<index;i++){
						String x;
						if(status[i] == true){
							x = "已借出";
						}else{
							x = "可借";
						}
						System.out.println((i+1)+"\t"+x+"\t《"+names[i]+"》\t"+data [i]+"日"+"\t"+account [i]+"次");
					}
					break;
				case 3:
					System.out.println("--->删除DVD");
					System.out.print("请输入DVD名称:");
					name = input.next();
					for(int i = 0;i<names.length;i++){
						if(name.equals(names[i])){
							index = i;
							break;
						}
					}
					for(int i=index;i<names.length-1;i++){
						names [i] = names[i+1];
						status [i] = status[i+1];
						data [i] = data[i+1];
						account [i] = account [i+1];
					}
					//names [name.length()-1] = null;
					System.out.println("删除《"+name+"》成功!");
					break;
					
				case 4:
					System.out.println("--->借出DVD");
					System.out.print("请输入DVD的名称:");
					name = input.next();
					for(int i = 0;i<names.length;i++){
						if(names[i].equals(name)){
							index = i;
							break;
						}else{
							index = -1;
						}
					}
					if(index ==-1){
						System.out.println("没有找到匹配信息");
					}else{
						if(status [index] ==true){
							System.out.println("《"+name +"》已被借出!");
						}else{
							status [index] = true;
							do{
								System.out.print("请输入借出日期:");
								time = input.nextInt();
								if(time<1||time>31){
									isRight = false;
								}else{
									isRight = true;
									data [index] =time;
								}
							}while(!isRight);
							account [index]++;
						}
					}
					break;
				case 5:
					boolean isfind5 = false ;
					System.out.println("--->归还DVD");
					System.out.print("请输入DVD名称:");
					name = input.next();
					for(int i = 0;i<names.length;i++){
						if(names [i] ==null){
							index = i;
							break;
						}
					}
					for(int i = 0;i<=index;i++){
						if(name.equals(names [i])){
							if(status [i]==true){
								do{
									System.out.println("请输入归还日期:");
									time = input.nextInt();
									if(time<31||time>data [i]){
										System.out.println("归还《"+name+"》成功!");
										System.out.println("借出日期是:"+data [i]);
										System.out.println("归还日期是:"+time);
										System.out.println("应付租金(元):"+(time - data[i]));
										isRight = true;	
									}else{
										isRight = false;
										System.out.println("归还日期不能小于借出日期;一个月只有31天!");
									}
								}while(!isRight);
								isfind5 = true;
								break;
							}else{
								System.out.println("该DVD没有被借出!无法进行归还操作!");
								isfind5 = true;
								break;
							}
						}else{
							isfind5 = false;
						}
					}
					if(!isfind5){
						System.out.println("没有找到匹配的信息!");
						break;
					}
					break;
				case 6:
					System.out.println("退出DVD...");
					exit =true;
					return;
				default :
					System.out.println("输入错误,请重新输入");
				}
			
			System.out.println("**************************");
			
			do{
				System.out.print("输入0返回:");
				if(0!= input.nextInt()){
					isZero = false;
				}else{
					isZero = true;
				}
			}while(!isZero);
			
				
		}while(!exit);
	}
}



  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java迷你DVD管理器是一个基于Java语言开发的DVD管理系统,可以实现DVD的增删改查等基本功能。根据提供的引用内容,可以看出该系统的主要类为DVDMgr和Menu,其中DVDMgr类负责DVD信息的初始化和管理,Menu类负责显示菜单和处理用户输入。下面是一个简单的Java迷你DVD管理器的实现示例: ```java package com.example.dvd; import java.util.ArrayList; import java.util.List; import java.util.Scanner; /** * DVD信息类 */ class DVD { private String name; // 名称 private String type; // 类型 private String date; // 出版日期 public DVD(String name, String type, String date) { this.name = name; this.type = type; this.date = date; } public String getName() { return name; } public String getType() { return type; } public String getDate() { return date; } @Override public String toString() { return "DVD{" + "name='" + name + '\'' + ", type='" + type + '\'' + ", date='" + date + '\'' + '}'; } } /** * DVD管理类 */ class DVDMgr { private List<DVD> dvdList = new ArrayList<>(); /** * 初始化DVD信息 */ public void initial() { dvdList.add(new DVD("肖申克的救赎", "剧情", "1994-09-10")); dvdList.add(new DVD("霸王别姬", "剧情", "1993-01-01")); dvdList.add(new DVD("阿甘正传", "剧情", "1994-06-23")); dvdList.add(new DVD("泰坦尼克号", "爱情", "1997-12-19")); } /** * 显示DVD列表 */ public void showList() { System.out.println("DVD列表:"); for (int i = 0; i < dvdList.size(); i++) { System.out.println((i + 1) + ". " + dvdList.get(i)); } } /** * 添加DVD */ public void addDVD() { Scanner scanner = new Scanner(System.in); System.out.print("请输入DVD名称:"); String name = scanner.nextLine(); System.out.print("请输入DVD类型:"); String type = scanner.nextLine(); System.out.print("请输入DVD出版日期(格式:yyyy-MM-dd):"); String date = scanner.nextLine(); dvdList.add(new DVD(name, type, date)); System.out.println("添加成功!"); } /** * 删除DVD */ public void deleteDVD() { Scanner scanner = new Scanner(System.in); System.out.print("请输入要删除的DVD编号:"); int index = scanner.nextInt(); if (index < 1 || index > dvdList.size()) { System.out.println("输入有误!"); return; } dvdList.remove(index - 1); System.out.println("删除成功!"); } } /** * 菜单类 */ class Menu { private static final int SHOW_LIST = 1; private static final int ADD_DVD = 2; private static final int DELETE_DVD = 3; private static final int EXIT = 4; /** * 显示菜单 */ public static void showMenu(DVDMgr mgr) { Scanner scanner = new Scanner(System.in); while (true) { System.out.println("请选择操作:"); System.out.println("1. 显示DVD列表"); System.out.println("2. 添加DVD"); System.out.println("3. 删除DVD"); System.out.println("4. 退出"); int choice = scanner.nextInt(); switch (choice) { case SHOW_LIST: mgr.showList(); break; case ADD_DVD: mgr.addDVD(); break; case DELETE_DVD: mgr.deleteDVD(); break; case EXIT: System.out.println("谢谢使用!"); return; default: System.out.println("输入有误,请重新输入!"); break; } } } } ```

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值