package test3;
import java.util.*;
public class Mooc4 {
Scanner sc=new Scanner(System.in);
String[] bookName={"高数","数据结构","haha"};
int l=bookName.length;
//通过实例化来实现test2()
public static void main(String[] args) {
Mooc4 m=new Mooc4();
m.test2();
}
//定义一个test1方法用来输入管理系统
public void test1(){
//通过while来实现无限循环
while(true){
System.out.println("输入命令:1-按照名称查找图书;2-按照序号查找图书");
//定义bookNum来选择不同的方式查找图书
int bookNum=sc.nextInt();
//按照名称查找图书
if(bookNum==1){
System.out.println("输入图书名称:");
String n1=sc.next();
//通过for循环来控制数组的输出
/*
* 这一步因为要遍历数组,所以每次都要打印"图书不存在",应该怎么修改
*/
for(int i=0;i<l;i++){
String book=bookName[i];
//比较输入字符串和图书名字
if(n1.equals(book)){
book=bookName[i];
System.out.println("book:"+book);
}else{
System.out.println("图书不存在!");
}
}
}
//按照序列查找图书
if(bookNum==2){
System.out.println("输入图书序号:");
int n2=sc.nextInt();
if(n2>=l){
System.out.println("图书不存在!");
}else{
System.out.println("book:"+bookName[n2]);
break;
}
}
}
}
//通过test2()调用test1()来获取异常
public void test2(){
try{
test1();
}catch(InputMismatchException e){
System.out.println("命令输入有误!请根据提示输入数字命令!");
}catch(Exception e){
e.printStackTrace();
}
}
}
for(i=0;i<l;i++){
String book=bookName[i];
//比较输入字符串和图书名字
if(n1.equals(book)){
book=bookName[i];
System.out.println("book:"+book);break;
}}
if(!n1.equals(bookName[i])){
System.out.println("图书不存在!");
}
}
加一个标志变量boolean flag=flase,遍历时候,如果存在所选图书,置为true.根据最终的flag 判断输出