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

异常处理--模拟借书系统

标签:
Java
---书类
package com.mengjiao;

public class Book {
    String bookName;
    int code;
    public Book(String bookName,int code){
        this.bookName = bookName;
        this.code = code;
    }
    public String getBookName() {
        return bookName;
    }

}
---程序入口类
package com.mengjiao;
import java.util.*;
public class MainClass {

    public static void main(String[] args) throws Exception{
        Book bk1 = new Book("数学",1);
        Book bk2 = new Book("语文",2);
        Book bk3 = new Book("英语",3);
        Book bk4 = new Book("物理",4);
        Book bk5 = new Book("化学",5);
        Book[] serial = {bk1,bk2,bk3,bk4,bk5};
        int m;
        Scanner input = new Scanner(System.in);
        while(true){
            try{
                System.out.println("输入命令: 1-按照名称查找图书;2-按照序号查找图书");
                m = input.nextInt();//可能抛出异常
                if(m!=1 && m!=2){
                    throw new Exception();//抛出异常
                }
                if(m==1){
                    System.out.println("输入图书名称:");
                    String s = input.next();
                    int i = 0;
                    for(i=0;i<5;++i){
                        if(serial[i].getBookName().equals(s))
                            break;
                    }
                    if(i==5){
                        System.out.println("图书不存在");
                    }
                    else
                        System.out.println("book:"+s);
                }
                else{
                    System.out.println("输入图书序号:");
                    int code = input.nextInt();
                    if(code > 5 || code < 1){
                        System.out.println("图书不存在!");
                    }
                    System.out.println("book:"+serial[code-1].getBookName());
                }   
            }catch(Exception e){
                System.out.println("命令错误!请根据提示输入数字命令");
                input.nextLine();
            }
            System.out.println("是否继续查找(y/n)");
            String s = input.next();
            while(!s.equals("y") && !s.equals("n")){
                System.out.println("请输入y或者n");
                s = input.next();
            }
            if(s.equals("n")){
                break;
            }
        }

    }

}

允许结果如下图
图片描述

欢迎大家分享

点击查看更多内容
4人点赞

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

评论

作者其他优质文章

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

100积分直接送

付费专栏免费学

大额优惠券免费领

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

举报

0/150
提交
取消