为了账号安全,请及时绑定邮箱和手机立即绑定

java入门第三季,图书借书异常处理程序

标签:
Java

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 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消