Book.java
public class Book {
int number;//图书序号
String name;//图书名称
public Book(int number,String name){
this.number=number;
this.name=name;
}
}
自定义一个异常,NotFoundException,表示查询书时,书不存在异常。
public class NotFoundException extends Exception {//图书不存在异常
public NotFoundException(){
}
public NotFoundException(String e){
super(e);
}
}
测试代码Search.java(参考幕友http://www.imooc.com/article/20142做了一些修改,删除了输入命令异常这个自定义异常,大家有兴趣的可以看看他的)
import java.util.Scanner;
public class Search {
public void SerchBook() throws NotFoundException {
Book[] books = { new Book(1, "gaoshu"), new Book(2, "wuli"), new Book(3, "yingyu"), new Book(4, "yuwen") };
Scanner s = new Scanner(System.in);
System.out.println("请选择查询图书的方式:1,按序号查询 2,按图书名查询:");
int x = s.nextInt();// 选择查询方式1或者2
if (x == 1) {
System.out.println("请选择图书的序号:");
int n = s.nextInt();// 选择图书序号
if (n < 1 || n > 4) {
throw new NotFoundException("图书不存在异常,请重新输入!");
} else {
for (Book book : books) {
if (book.number == n) {
System.out.println("book:" + book.name+"序号是:"+book.number);
}
}
}
} else if (x == 2) {
System.out.println("请输入图书的名字!");
String n = s.next();// 选择图书的名字
boolean flag = false;
for (Book book : books) {
if (book.name.equals(n)) {
System.out.println("book:" + book.name+"序号是:"+book.number);
flag = true;
}
}
if (flag != true) {
throw new NotFoundException("图书不存在异常,请重新输入!");
}
}else{
System.out.println("输入错误,请重新输入【1 按序号查询 2按书名查询】");
}
}
public static void main(String[] args) {
Search search = new Search();
try {
search.SerchBook();
} catch (NotFoundException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
}
程序实现:
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦