亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

作業問題,請教大神幫忙

package?try_catch;
import?java.util.InputMismatchException;
import?java.util.Scanner;
public?class?TryCatchPractice2?{		
????//在類開始聲明,則其他方法都能調用	
????Scanner?in=new?Scanner(System.in);
????NoBookException?NoB=new?NoBookException();	
????String[]?books={"語文","數學","英語"};	
????static?TryCatchPractice2?trycat=new?TryCatchPractice2();			
????
????//主函數	
????public?static?void?main(String[]args)?throws?NoBookException{		
????????trycat.InputClassException();	
????}	
????//命令錯誤
????public?void?InputClassException()throws?NoBookException{			
????????try{		
????????System.out.println("歡迎光臨本圖書管理系統");		
???????	System.out.println("1.書名查詢。2.序號查詢");		
???????	int?a=in.nextInt();		
???????	switch(a){		
???????	????case?1:	//查找圖書		
???????	??	trycat.findBooks();			
???????	????break;		
???????	????case?2://查找序號			
???????	????	trycat.findBooksNum();		
???????	????break;		
???????	????default:		
???????	????	throw?new?NoBookException("錯誤命令,請輸入整數1或2");//如果輸入數字非1,2則拋出		
???????	????break;	
?????????}catch(NoBookException?e){
?//		InputMismatchException?InE=new?InputMismatchException();
?//			InE.initCause(e);
?//			System.out.println("錯誤命令,請輸入整數1或2");
?//			求教如何在掃描儀我輸入非int型時會提示錯誤命令,例如a
?			e.printStackTrace();
?			System.out.println("請重新輸入:");			
?			InputClassException();		
?	}			
?}			
?//查找圖書	
?public?void?findBooks()throws?NoBookException{		
?????System.out.println("請輸入您要查詢的圖書:");		
?????String?b=in.next();		
?????try{			
?????????for(int?i=0;i<books.length;i++){				
?????????????if(books[i].equals(b)){//如果查詢的書名不為空,輸出書本信息				
?????????????	System.out.println("查詢成功");			
?????????????}else{//如果查詢為空,拋出異常				
?????????????	throw?new?NoBookException("圖書不存在");			
???????????	?}		
?????????}		
?????}catch(NoBookException?e){	
?????		e.printStackTrace();//捕捉到異常后輸出異常位置		
?????		NoB.initCause(e);			
?????		System.out.println("請重新輸入:");	
?????		InputClassException();//重新進入系統		
?????}	
?}			
?//查找序號
?public?void?findBooksNum()throws?NoBookException{	
?	System.out.println("請輸入您要借閱的圖書序號:");
?	int?i=in.nextInt();		
?	try{			
?	????if(i<books.length&&i>=0){//如果查詢的序號不越界,輸出書本信息		
?	???	System.out.println("查詢成功");				
?	???	System.out.println("您查詢的是"+books[i]);			
?	????}else{//越界則拋出數組越界異常			
?	????	throw?new?NoBookException("序號錯誤");			
?	????}		
?	}catch(NoBookException?e){		
?		e.printStackTrace();//捕捉到異常后輸出異常位置		
?		NoB.initCause(e);			
?		System.out.println("請重新輸入:");			
?		InputClassException();//重新進入系統		
?	}			
?}	
?//in.close();//為什么這里打in.close.關閉掃描儀會報錯
}


正在回答

1 回答

InputClassException()方法少了個結束的括號

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

舉報

0/150
提交
取消
Java入門第三季
  • 參與學習       409767    人
  • 解答問題       4543    個

Java中你必須懂得常用技能,不容錯過的精彩,快來加入吧

進入課程

作業問題,請教大神幫忙

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號