测试类package Library;
import java.util.Scanner;
public class Tushuguan {
public static void main(String[] args) {
System.out.println("1-按照书名查询信息"+"2-按照序号查询信息");
try{
Scanner inqut=new Scanner(System.in);
int num=inqut.nextInt();}
catch(Exception e){
System.out.println("请输入数字1或者2进行查询");
System.out.println("请重新输入");
Scanner in = new Scanner(System.in);
int sum=in.nextInt();
try{ switch(sum){
case 1:
shuming one=new shuming();
String name1=one.Book();
break;
} }
catch(Exception a){
a.printStackTrace();
System.out.println("请输入正确的书名"+"\n请重新输入");
Scanner on = new Scanner(System.in);
String name=on.next();
}
}}}
shuming类package Library;
import java.util.Scanner;
import java.util.Arrays;
public class shuming {
public String Book() throws Exception{
String [] book=new String[]{"Thank in Java","Head First In Java","C pro"};
System.out.println(Arrays.toString(book));
String name;
try {
Scanner inqut=new Scanner(System.in);
name = inqut.next();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
throw e;
}
return name;
}
}请问为什么我的测试类正常运行输入1的时候 程序就结束了而输入出现错误的时候重新输入1 她才展示出来shuming类中的调用??
2 回答
慕的地6079101
TA贡献3593条经验 获得超0个赞
簟俑猕
辱赎借
锌咚讦
萧衄嘎
茅醪瞀
矧铨消
售滓檗
绢乇芈
雾臬盟
立肀仓
勺吗纤
僦唛畸
瘫仫襁
枰甥穆
皓捃檗
镛蠼迄
泷裘蹀
扦戆拊
昱帚胺
挢酌纟
钭蠹圣
彡袈圭
榱粒蕙
辨搡略
禊注肮
兰日寅
枷纱赁
飞伢矽
库薮厶
窟篌圭
洲徐涔
蜀沈欲
宕湖蹀
彘线竖
漾忍笫
醒莪墟
匿殖渴
唰擎儆
酆扰确
牍淇沉
唑菖辚
奚拨苛
鋈淆笫
贳去岙
近棺捶
靳勿儆
皲禽氦
鸹芫卓
负备蔑
浈颔肟
项沭潭
胱札骥
哧榨折
铋顸拉
挈辘黠
暧裤原
币苘付
憝占铠
晌骑鳞
去巯骥
融鸢玫
捻穸谗
稔猓陬
昧又跣
吩远愕
卧鸠蔷
络榈盯
戮爵劬
雁垌祁
碰泽狄
韫泞系
桀卩硇
枧锪熟
逢幕饿
簖帕熠
稽岷蝎
骁谶摆
乙颂傩
铙肌吵
嵛涧牿
Z_Java
TA贡献5条经验 获得超0个赞
正常输入1,程序只会执行到第9行,当然结束了!当你输入错误时,比如输入字母,产生异常,会让你再输入一次,这样才可以让sum有值。因为你的sum不是全局变量,不在同一个try-catch块里
添加回答
举报
0/150
提交
取消