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

交作业~~欢迎暴力测试,提出改进。

package AA;


import java.util.Scanner;


public class Main {

    static String[] s = {"红楼梦","水浒传","西游记","三国演义"};

public static void main(String[] args) {

select();

}

    public static void select(){

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

    try{

    Scanner sc = new Scanner(System.in);

        int a = sc.nextInt();

        if(a == 1){ Name();

        }else if(a == 2){ Num();

        }else{

        System.out.println("你输入的命令有误!");

        select();

        }

    }catch(Exception e){

    e.printStackTrace();

    }

    }

    public static void Name(){

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

    try{

    Scanner sc = new Scanner(System.in);

        String x = sc.next();

        name(x);

        if(x.equals(s[0])){

        System.out.println("书籍:"+s[0]);

        System.out.println("是否继续查找书籍?1-是。2-否");

        int a = sc.nextInt();

        if(a == 1){ select(); }

        else{ System.out.println("欢迎下次光临!"); }

        }else if(x.equals(s[1])){

        System.out.println("书籍:"+s[1]);

        System.out.println("是否继续查找书籍?1-是。2-否");

        int a = sc.nextInt();

        if(a == 1){ select(); }

        else{ System.out.println("欢迎下次光临!"); }

        }else if(x.equals(s[2])){

        System.out.println("书籍:"+s[2]);

        System.out.println("是否继续查找书籍?1-是。2-否");

        int a = sc.nextInt();

        if(a == 1){ select(); }

        else{ System.out.println("欢迎下次光临!"); }

        }else if(x.equals(s[3])){

        System.out.println("书籍:"+s[3]);

        System.out.println("是否继续查找书籍?1-是。2-否");

        int a = sc.nextInt();

        if(a == 1){ select(); }

        else{ System.out.println("欢迎下次光临!"); }

        }else{

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

        Name();

        }

    }catch(Exception e){

    System.out.println(e.getMessage());

    select();

    }

    }

    public static void Num(){

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

    try{

    Scanner sc = new Scanner(System.in);

        int y = sc.nextInt();

        num(y);

    if(y==0){

    System.out.println("book:"+s[0]);

    System.out.println("是否继续查找书籍?1-是。2-否");

int a = sc.nextInt();

if(a == 1){ select(); }

else{ System.out.println("欢迎下次光临!"); }

    }

    else if(y==1){

    System.out.println("book:"+s[1]);

    System.out.println("是否继续查找书籍?1-是。2-否");

int a = sc.nextInt();

if(a == 1){ select(); }

else{ System.out.println("欢迎下次光临!"); }

}

    else if(y==2){

           System.out.println("book:"+s[2]);

           System.out.println("是否继续查找书籍?1-是。2-否");

               int a = sc.nextInt();

               if(a == 1){

               select();

            }

               else{

              System.out.println("欢迎下次光临!");

            }

      }

    else if(y==3){

            System.out.println("book:"+s[3]);

            System.out.println("是否继续查找书籍?1-是。2-否");

          int a = sc.nextInt();

          if(a == 1){

          select();

          }

          else{

          System.out.println("欢迎下次光临!");

          }

        }

    else{

    System.out.println("此序号不存在!");

    Num();

    }

    }catch(Exception e){

    System.out.println(e.getMessage());

    select();

    }

    }

    public static String name(String x)throws Exception{

    if(!(x.equals(s[0]))&&!(x.equals(s[1]))&&!(x.equals(s[2]))&&!(x.equals(s[3]))){

    throw new Exception("图书不存在");

    }

    return x;

    }

    public static int num(int y)throws Exception{

    if(y<0||y>3){

    throw new Exception("图书不存在");

    }

    return y;

    }

}


正在回答

1 回答

/***

1、循环体+return  可以在用户输入错误时可以在选择输入,退出时可以退出整个程序。

2、catch 出的错误,我们提示“错误”,不要用系统的错误,用户体验更好。

*/

 public static void select(){


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

while(true){

try{


Scanner sc = new Scanner(System.in);


int a = sc.nextInt();


if(a == 1){ Name();

    return;  //退出


}else if(a == 2){ Num();

return; //退出


}else{


System.out.println("你输入的命令有误!");


//select();


}


}catch(Exception e){


//e.printStackTrace();

System.out.println("请输入1、2选择操纵");

}


}

}


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

举报

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

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

进入课程

交作业~~欢迎暴力测试,提出改进。

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