package com.imooc; import java.util.Scanner; import java.util.InputMismatchException; public class BorrowBooksSys { String[] books=new String[]{"高数","数据结构","Linux网络编程","Java程序设计","C++程序设计","操作系统原理"}; public int cmdTips(){ System.out.println("输入命令:1-按照名称查找;2-按照序号查找图书"); int cmd=0; Scanner input=new Scanner(System.in); try{ cmd=input.nextInt(); }catch(InputMismatchException e){ cmd=0; } return cmd; } public void inputBookName(){ System.out.println("输入图书名称:"); Scanner input=new Scanner(System.in); String name=input.next(); int i=0; for(i=0;i!=books.length;++i) { if(name.equals(books[i])) { System.out.println("book:"+name); return; } } if(i==books.length) System.out.println("图书不存在!"); } public void inputBookNumber(){ System.out.println("输入图书序号:"); Scanner input=new Scanner(System.in); int index=0; try{ index=input.nextInt(); }catch(InputMismatchException e){ System.out.println("命令输入错误!请根据提示输入数字命令!"); inputBookNumber(); } String book=new String(); try{ book=books[index-1]; }catch(ArrayIndexOutOfBoundsException e){//out range of array System.out.println("图书不存在!"); return; } System.out.println("book:"+book); } public static void main(String[] args) { // TODO Auto-generated method stub int cmd=0; BorrowBooksSys bbsys=new BorrowBooksSys(); while(true){ cmd=bbsys.cmdTips(); switch(cmd){ case 1: bbsys.inputBookName(); break; case 2: bbsys.inputBookNumber(); break; default: System.out.println("命令输入错误!请根据提示输入数字命令!"); break; } } } } /*Java初学者,欢迎交流指正。 *每个局部的Scanner对象input不能在函数内用完就调用 *关闭函数(input.close()),否则会出现异常。 */