要求:
提示用户输入 按照书名或者图书序号来查找信息;
如果用户输入信息有误就会抛出提示信息并且要求重新输入;
(1)定义图书查找异常类findexception,继承自Exception。
public class findexception extends Exception {
public findexception(String message){
super(message);
}
}
(2)编写一个查找图书系统类。
import java.util.*;
public class booktest {
protected int id = 0;
protected String name;
static int i = 1;
String[] books = new String[] { "论语", "高数", "英语" };
public static Scanner sc = new Scanner(System.in);
public booktest() {
}
public static void bookfind() throws findexception, InputMismatchException {
System.out.println("输入命令:1-按照命令查找图书 2-按照序号查找图书");
int com = sc.nextInt();
if (com == 1) {
i = 2;
booktest bt = new booktest();
bt.searchname();
} else if (com == 2) {
i = 2;
booktest bt = new booktest();
bt.searchtype();
} else {
throw new InputMismatchException("输入错误,请根据提示输入数字命令");
}
}
(3)测试类
Public class booktest{
public static void main(String[] args) {
booktest bt = new booktest();
while (i == 1) {
try {
bookfind();
} catch (findexception e) {
System.out.println("图书不存在!");
// System.out.println("输入命令:1-按照命令查找图书 2-按照序号查找图书");
i = 1;
} catch (ArrayIndexOutOfBoundsException e) {
System.out.println("图书不存在!");
i = 1;
}
}
}
}