写的有点麻烦,以后会简化!
Book.java文件
public class Book {
private String[] books = {
"C语言", "C++语言","Java语言","数据结构","线性代数",
"离散数学","微积分", "大学物理","大学英语","操作系统",
"嵌入式系统","马克思主义","毛泽东思想","邓小平理论"
};
public String[] getBooks() {
return books;
}
public void setBooks(String[] books) {
this.books = books;
}
}
BookNotExistException.java文件
public class BookNotExistException extends Exception {
public BookNotExistException(){
System.out.println("你所查找的图书不存在!");
}
public BookNotExistException(String message){
super(message);
}
}
DemandNotExistException.java文件
public class DemandNotExistException extends Exception{
DemandNotExistException(String message){
super(message);
}
public DemandNotExistException() {
System.out.println("命令输入错误!");
}
}
MainSystem.java文件
import java.util.Scanner;
public class MainSystem {
public static void main(String[] args) {
System.out.println("欢迎来到借书系统!");
while (true) {
Step1 step1 = new Step1();
try {
step1.entrance();
} catch (DemandNotExistException e) {
// TODO Auto-generated catch block
continue;
}
}
}
}
Step1.java文件
import java.util.Scanner;
public class Step1 {
public void entrance() throws DemandNotExistException{
System.out.println("输入命令:1:按名称查找图书 2.按序号查找图书");
Scanner scanner = new Scanner(System.in);
int demand = scanner.nextInt();
if (demand == 1) {
System.out.println("输入图书名称:");
Step3 step3 = new Step3();
try {
step3.findBookByName();
} catch (BookNotExistException e) {
// TODO Auto-generated catch block
}
}else if (demand == 2) {
System.out.println("输入图书序号:");
Step2 step2 = new Step2();
try {
step2.findBookByNum();
} catch (BookNotExistException e) {
// TODO Auto-generated catch block
}
}else {
throw new DemandNotExistException();
}
}
}
Step2.java文件
import java.util.Scanner;
public class Step2 {
public void findBookByNum() throws BookNotExistException {
// TODO Auto-generated method stub
System.out.println("请输入图书的序号(从1开始):");
Scanner scanner = new Scanner(System.in);
int num = scanner.nextInt();
if (num>=1&&num<=(new Book().getBooks().length + 1)) {
System.out.println("book:"+new Book().getBooks()[num-1]);
}else {
throw new BookNotExistException();
}
}
}
Step3.java文件
import java.util.Scanner;
public class Step3 {
public void findBookByName() throws BookNotExistException {
// TODO Auto-generated method stub
System.out.println("请输入图书的书名:");
Scanner scanner = new Scanner(System.in);
String name = scanner.next();
int i = 0;
for (String bookName : new Book().getBooks()) {
if (name.equals(bookName)) {
System.out.println("book:"+bookName);
break;
}else {
i++;
}
}
if (i == new Book().getBooks().length) {
throw new BookNotExistException();
}
}
}