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

作业提交,大家给提提意见,有什么简单点的方法实现吗

package com.imooc.exception;

import java.util.Arrays;
import java.util.Scanner;

public class BorrowBook {
    public static void main(String[] args) {
        BorrowBook borrowBook=new BorrowBook();
       borrowBook.Borrow();
    }

    public void Borrow(){
        // 书号分别对应的是1,2,3,4
        String[] books={"西游记","红楼梦","三国演义","水浒传"};
        System.out.println("欢迎使用图书管理系统!");
        System.out.println("1. 按照书名查找图书       2.按照序号查找图书");
        Scanner input =new Scanner(System.in);
        try {
           int num=input.nextInt();
           if (num==1){
               System.out.println("请输入书名:");
               Scanner input1=new Scanner(System.in);
               String bookname=input1.nextLine();
               boolean book= Arrays.asList(books).contains(bookname);
               if (book==true){
                   System.out.println(bookname+"借书成功!");
               }else {
                   throw new NoBookException("此书不存在");
               }
           }
           if (num==2){
               System.out.println("请输入书号:");
               Scanner input2=new Scanner(System.in);
               int shuhao=input2.nextInt();

                   if (shuhao>0 && shuhao<=books.length ){
                       System.out.println(books[shuhao-1]+"借书成功!");
                   }else{
                       throw new NoBookException("查无此书!");
                   }
           }
        }catch (NoBookException e){
            System.out.println(e);
            System.out.println();
            Borrow();
        }
    }
}


正在回答

4 回答

你的shuhao应该>=0,就比如36行,应该这么写:if (shuhao>=0  && shuhao<books.length )。因为数组下标从0开始

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

这个序号是自动就给定好了的吗?

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

拆鸡

他拿的是索引吗????
2019-07-31 回复 有任何疑惑可以回复我~

package com.imooc.exception; import java.util.Arrays;import java.util.Scanner; public class BorrowBook {    public static void main(String[] args) {        BorrowBook borrowBook=new BorrowBook();       borrowBook.Borrow();    }     public void Borrow(){        // 书号分别对应的是1,2,3,4        String[] books={"西游记","红楼梦","三国演义","水浒传"};        System.out.println("欢迎使用图书管理系统!");        System.out.println("1. 按照书名查找图书       2.按照序号查找图书");        Scanner input =new Scanner(System.in);        try {           int num=input.nextInt();           if (num==1){               System.out.println("请输入书名:");               Scanner input1=new Scanner(System.in);               String bookname=input1.nextLine();               boolean book= Arrays.asList(books).contains(bookname);               if (book==true){                   System.out.println(bookname+"借书成功!");               }else {                   throw new NoBookException("此书不存在");               }           }           if (num==2){               System.out.println("请输入书号:");               Scanner input2=new Scanner(System.in);               int shuhao=input2.nextInt();                    if (shuhao>0 && shuhao<=books.length ){                       System.out.println(books[shuhao-1]+"借书成功!");                   }else{                       throw new NoBookException("查无此书!");                   }           }        }catch (NoBookException e){            System.out.println(e);            System.out.println();            Borrow();        }    }}

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

你这个已经挺简单了,要是借书前加个循环输出都有哪些书号+书名,就更好了

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

拆鸡

大哥 你那边这想法有完成吗 我和你同样的想法
2019-07-31 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

作业提交,大家给提提意见,有什么简单点的方法实现吗

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