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

图书馆查找系统,有点长

标签:
Java
--自定义异常
package org.books;

public class InfoErr extends Exception{

    public InfoErr(String message){
        super(message);

    }

}
--定义异常的详细信息
package org.books;

import java.util.Scanner;

public class ExceptionDemo {
    ThrowsDemo[] demo ={new BooksInfo(1,"语文","阿迷"),new BooksInfo(2,"悲惨世界","雨果"),new BooksInfo(3,"java基础","sun"),new BooksInfo(4,"Mysql","Dave") };

    public void Exception() throws  InfoErr{
        System.out.println("请选择查找图书的方式:1.按照书名进行查找  2.按照作者进行查找" );

        Scanner input = new Scanner(System.in); //提供在控制台进行输入功能
        int number= input.nextInt();        

        if(number!=1&&number!=2){//判断查询条件

            throw new InfoErr("您输入的信息有误!请按提示重新输入!!");

        }else{   
                if(number==1){
                     System.out.println("请输入您找的书名:");                
                      String name= input.next(); 

                  //对控制台输入的书名进行判断
                      if(name=="语文"||"语文".equals(name)){
//                            System.out.println(demo[1].author);
                              System.out.println("数的序号为:"+demo[0].no+" 书名为:"+demo[0].bookName+" 作者为:"+demo[0].author);
                          }
                          else if(name=="悲惨世界"||"悲惨世界".equals(name)){
                              System.out.println("数的序号为:"+demo[1].no+" 书名为:"+demo[1].bookName+" 作者为:"+demo[1].author);
                          }
                          else if(name=="java基础"||"java基础".equals(name)){
                              System.out.println("数的序号为:"+demo[2].no+" 书名为:"+demo[2].bookName+" 作者为:"+demo[2].author);
                          }
                          else if(name=="Mysql"||"Mysql".equals(name)){
                              System.out.println("数的序号为:"+demo[3].no+" 书名为:"+demo[3].bookName+" 作者为:"+demo[3].author);

                }

                       else if(name !=demo[0].bookName&& name!=demo[1].bookName&& name!=demo[2].bookName&& name!=demo[3].bookName){
                      throw new InfoErr("您查找的书名不存在!请重新输入!");

                } 
                      }

                if(number==2){
                    System.out.println("请输入您找的作者名:");                
                      String auName= input.next();

                       if(auName=="阿迷"||"阿迷".equals(auName)){

//                        System.out.println(demo[1].author);
                          System.out.println("数的序号为:"+demo[0].no+" 书名为:"+demo[0].bookName+" 作者为:"+demo[0].author);
                      }
                      else if(auName=="雨果"||"雨果".equals(auName)){
                          System.out.println("数的序号为:"+demo[1].no+" 书名为:"+demo[1].bookName+" 作者为:"+demo[1].author);
                      }
                      else if(auName=="sun"||"sun".equals(auName)){
                          System.out.println("数的序号为:"+demo[2].no+" 书名为:"+demo[2].bookName+" 作者为:"+demo[2].author);
                      }
                      else if(auName=="Dave"||"Dave".equals(auName)){
                          System.out.println("数的序号为:"+demo[3].no+" 书名为:"+demo[3].bookName+" 作者为:"+demo[3].author);
                      }else  if(auName!=demo[0].author&& auName!=demo[0].author&&auName!=demo[1].author&&auName!=demo[2].author&&auName!=demo[3].author){
                          throw new InfoErr("您查找的作者不存在!请重新输入!");
                      }
                }

        }

    }

    }

--实现
package org.books;

import java.util.InputMismatchException;
import java.util.Scanner;

public class Action {

    public static void main(String[] args) {
        ExceptionDemo ex = new ExceptionDemo();

    do{
        try {
            ex.Exception();
            Scanner input = new Scanner(System.in); //提供在控制台进行输入功能
            int number= input.nextInt();

            } catch (InfoErr e) {
                // TODO Auto-generated catch block
                System.out.println(e.getMessage());

            }catch(Exception e){//判断控制台输入的类型是否正确
                System.out.println("您输入的信息有误!请按提示重新输入!");
            }
    }while(true);

            }

    }
--运行结果
![图片描述][1]
点击查看更多内容
1人点赞

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

评论

作者其他优质文章

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

100积分直接送

付费专栏免费学

大额优惠券免费领

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

举报

0/150
提交
取消