package com.itheima.prepare.day08;
import java.util.Map;
import java.util.Scanner;
import java.util.Set;
import java.util.TreeMap;
/**
*
* 要求 1.要求在控制台上列出列表:通过键盘来选择功能代号! 2.自定义存储类,类中定义存储DVD的信息和状态,1表示已经借出,0表示没有借出。
* 3.通过在控制台上输出的列表下选项可以循环的操作,直到选择退出系统的数字代码
* 4.对输入的功能列表代码要进行处理异常。如果输入的不是数字或者不是在功能代号的范围内,都做相应的处理
* 5.提示(利用面向对象的思想来编写,对于数据信息存在一个类中,可以用数组来存储,状态也可以存储在数组中。也可以用集合来存储) 功能列表:
* 1.查看DVD列表 2.借出DVD 3.退出DVD系统 功能介绍: 1.查看功能: 可以查看DVD列表和借出的状态 2.借出: 输入要借的DVD名称
* 若存在此DVD 则借出成功,如果不存在则提示没有此DVD, 然后返回主菜单,或则再次输入正确DVD名称。 3.退出DVD系统:
* 退出系统,就是退出程序。 切记:功能的选择顺序可以循环:
* 在选择每一个功能后,可以返回主菜单,然后可以进行选择别的功能,这样来回的循环,直到输入3,退出系统。
*
* @author Auser
*
*/
public class DvdQueryProject {
// 书库集合
private static Map<String, Integer> books;
// set集合
private static Set<String> bookskey;
public static void main(String[] args) {
initialise();
// 主菜单
menu();
while (true) {
Scanner scanner = new Scanner(System.in);
System.out.println("请选择:");
String writein = scanner.next();
// 防止输入不合法
try {
Integer write = Integer.valueOf(writein);
if (write == 1) {
// 查询菜单
lookup();
} else if (write == 2) {
// 借出系统
loan();
} else if (write == 3) {
// 退出系统
exit();
} else if (write == 0) {
menu();
} else {
System.out.println("请先进入DVD管理系统");
}
} catch (Exception e) {
System.out.println("请先进入DVD管理系统");
}
}
}
// 主菜单
public static void menu() {
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("*************************************");
}
// 查阅
public static void lookup() {
System.out.println("欢迎使用DVD 管理系统-------->查询DVD");
for (String string : bookskey) {
System.out.print(string);
Integer integer = books.get(string);
if (integer != 0) {
System.out.println(" 已借出");
} else {
System.out.println();
}
}
System.out.println("输入0返回主菜单:");
}
// 借出系统
public static void loan() {
int n = 0;
System.out.println("欢迎使用DVD 管理系统-------->借出");
Scanner scanner = new Scanner(System.in);
System.out.println("请输入你要借的书的名字:");
String name = scanner.next();
name.trim();
for (String string : bookskey) {
if (string.equals(name)) {
books.put(string, 1);
n = 1;
System.out.println("成功借出");
}
}
if (n == 0) {
System.out.println("您的输入不存在!!");
}
System.out.println("输入0返回主菜单:");
}
// 退出
public static void exit() {
System.exit(0);
}
// 初始化书库
public static Map<String, Integer> initialise() {
books = new TreeMap<String, Integer>();
books.put("罗马假日", 0);
books.put("越狱", 0);
books.put("浪漫小屋", 0);
books.put("我的大学", 0);
bookskey = books.keySet();
return books;
}
}