holy_yakutsk
2017-04-18 09:51:57
package?tushu;
public?class?Shu?extends?Tushu{
public?Shu(int?id,String?name){
this.name=name;
this.id=id;
}
}package?tushu;
public?class?Tushu?{
int?id;
String?name;
}package?tushu;
import?java.util.Scanner;
public?class?Use?{
public?static?void?main(String[]?args)?{
//?TODO?自動生成的方法存根
Tushu?Tushu[]?=?{
new?Shu(1,"數(shù)學"),
new?Shu(2,"語文"),
new?Shu(3,"英語"),
new?Shu(4,"物理")
};
System.out.println("輸入命令:/t1:按照名稱查找圖書/t2:按照序號查找圖書");
Scanner?input?=?new?Scanner(System.in);
int?id=input.nextInt();
if(id==1){
System.out.print("輸入書名:");
String?ru=input.next();
for(int?i=0;i<Tushu.length;i++){
if(Tushu[i].name.equals(ru)){
System.out.println("book:"+Tushu[i].name);
System.exit(0);
}
}
System.out.println("圖書不存在");
Use.main(args);
}else?if(id==2){
System.out.print("輸入序號:");
int?e=input.nextInt();
for(int?i=0;i<Tushu.length;i++){
if(Tushu[i].id==e){
System.out.println("book:"+Tushu[i].name);
System.exit(0);
}
}
System.out.println("圖書不存在");
Use.main(args);
}else{
System.out.println("輸入錯誤,請根據(jù)提示輸入。");
Use.main(args);
}
}
}能正常運行,但是異常處理,用try{}catch(){}包圍不會,求指導
1 回答

風中打傘的小孩
TA貢獻73條經(jīng)驗 獲得超20個贊
try里面放置自己感覺會出錯的代碼,catch里面放置怎么處理的代碼。
簡單的,在?Java?中要將 String 類型轉(zhuǎn)化為 int 類型時,需要使用 Integer 類中的?parseInt() 方法,它是需要異常處理的,因為字符串中可能會出現(xiàn)非數(shù)字的情況。
這個例子里,輸入序號那里,如果用戶輸入的序號大于數(shù)組長度了,不是就會發(fā)生數(shù)組越界了嗎,不過,你那樣處理不會。
添加回答
舉報
0/150
提交
取消