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

【交作业啦】


//自定义异常1:命令错误异常

package com.imooc.exceptionTest;

public class wrongCommandException extends Exception {

      public wrongCommandException() {

   }


      public wrongCommandException(String message) {

      super(message);

   }

}

//自定义异常2:图书不存在异常

package com.imooc.exceptionTest;

public class wrongNameException extends Exception {

      public wrongNameException() {

   }

      public wrongNameException(String message) {

      super(message);

   }

}

//测试类

package com.imooc.exceptionTest;

import java.util.Arrays;

import java.util.Scanner;

 

public class BorrowE {

   public static void main(String[] args) {

      BorrowE borrow = new BorrowE();

      borrow.select();

   }

   public void select() {

      String[] books = new String[] {"数据结构","Java从入门到精通","计算机网络","操作系统","数字图像处理"};

      System.out.println("输入命令:1-按照名称查找图书; 2-按照序号查找图书");

      Scanner input = new Scanner(System.in);

      try{

        if(input.hasNextInt()) {

           int in = input.nextInt();

           if(in==1) {

              System.out.println("输入图书名称:");

              Scanner input2 = new Scanner(System.in);

              String inM = input2.nextLine();

              boolean flag = Arrays.asList(books).contains(inM);

              if(flag) {

                 System.out.println(inM+"存在!");

              }else {

                 throw new wrongNameException();

              }

           }else if(in==2) {

              System.out.println("输入图书序号:");

              int inN = input.nextInt();

              if(inN>=0 && inN<books.length) {

                 System.out.println("你要查询的图书名称为:"+books[inN]);

              }else {

                 throw new wrongNameException();

              }

           }else {

              throw new wrongCommandException();

           }

        }else {

           throw new wrongCommandException();

        }

      }catch(wrongCommandException e){

        System.out.println("命令错误!请根据提示输入数字命令!");

        select();

      }catch(wrongNameException e) {

        System.out.println("图书不存在!");

        select();

      }

   }


}


正在回答

3 回答

有点问题,第二个输序号的地方之前也需要if(input.hasNextInt()) 判断是否为整数输入

0 回复 有任何疑惑可以回复我~

琢磨半天视频不如看这一篇作业,多谢

0 回复 有任何疑惑可以回复我~

写得很清晰,看完基本就明白了思路,谢谢!

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第三季
  • 参与学习       409790    人
  • 解答问题       4340    个

Java中你必须懂得常用技能,不容错过的精彩,快来加入吧

进入课程

【交作业啦】

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信