求个大神指出错误...

来源:1-9 经验总结

走在_路上

2015-08-06 16:14

import java.util.InputMismatchException;
import java.util.Scanner;
public class Book {

 public String books[]={"物理","化学","历史","政治"};
 public static void main(String[] args) {
  Book Use=new Book();
  Use.test();
  
  
  // TODO Auto-generated method stub

 }
public  void test(){
Scanner input=new Scanner(System.in);
System.out.println("输入命令:1-按照名称查找图书;2-按照序号查找图书");
try{
 int a=input.nextInt();
 switch(a){
 case 1:
  System.out.println("请输入图书名称");
  Scanner as=new Scanner(System.in);
  String name=as.next();
    for(int i=0;i<books.length;i++){
         if(books[i].equals(name)){ 
        System.out.println("book:"+books[i]);
         test();
      }
    }
       System.out.println("图书不存在,请重新输入");
    test();
 case 2:
  System.out.println("请输入图书序号");
  try{
  int d=input.nextInt();
  for(int i=0;i<books.length;i++){
   if(d==i+1){
   System.out.println("book"+books[i]); 
   }
  }
  test();
  }catch(InputMismatchException d ){
   System.out.println("输入有误,请输入正确的图书序号");
   test();
  }
 
 }
 
}catch(Exception e){
 System.out.println("命令输入错误!请根据提示输入数字命令");
 test();
}
 
}
 
}

http://img.mukewang.com/55c317660001f1f514400874.jpg

写回答 关注

2回答

  • 永远的蓝天
    2015-09-28 16:35:54

    楼主的问题是啥?在我这运行的没有报错啊?

  • lx1024ly
    2015-08-07 23:16:54
    package com.pun;
    import java.util.InputMismatchException;
    import java.util.Scanner;
    public class Book {
    
    
    
    	public static void main(String[] args) {
    		Book Use=new Book();
    		Use.test();
    
    
    		// TODO Auto-generated method stub
    	}
    	public  void test(){
    		String[] books={"物理","化学","历史","政治"};
    		Scanner input=new Scanner(System.in);
    		System.out.println("输入命令:1-按照名称查找图书;2-按照序号查找图书"); 
    		try{
    			int a=input.nextInt();
    			switch(a){
    			case 1:
    				System.out.println("请输入图书名称");
    				Scanner as=new Scanner(System.in);
    				String name=as.next();
    				for(int i=0;i<books.length;i++){
    					if(books[i].equals(name)){  
    						System.out.println("book:"+books[i]); 
    						test();
    					}
    				}
    				System.out.println("图书不存在,请重新输入"); 
    				test();
    			case 2:
    				System.out.println("请输入图书序号");
    				try{
    					int d=input.nextInt();
    					for(int i=0;i<books.length;i++){
    						if(d==i+1){
    							System.out.println("book"+books[i]); 
    						}
    					}
    					test();
    				}catch(InputMismatchException d ){
    					System.out.println("输入有误,请输入正确的图书序号");
    					test();
    				}
    
    			}
    
    		}catch(Exception e){
    			System.out.println("命令输入错误!请根据提示输入数字命令");
    			test();
    		}
    
    	}
    
    }


Java入门第三季

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

409765 学习 · 4543 问题

查看课程

相似问题