java抛出异常继续执行

importjava.util.*;publicclassTest{publicstaticvoidmain(String[]args){@SuppressWarning... import java.util.*;
public class Test {
public static void main(String[] args){
@SuppressWarnings("resource")

Scanner sc = new Scanner(System.in);
System.out.println("请输入您的姓名:");
String a = sc.next();
System.out.println("请输入您的年龄:");
try{
int b =sc.nextInt();
System.out.println("请输入您的工作:");
String c = sc.next();
System.out.println("请输入您的其他信息:");
String d = sc.next();
Person one = new Person(a);
System.out.println(one.toString());
Something two = new Something(b,c,d);
System.out.println(two.toString());}catch(Exception e){
System.out.println("输入错误");

};
}
}

如果int b =sc.nextInt();输入错误
如何让后面的输入继续执行
展开
 我来答
青花渐微凉
2015-10-03 · 超过12用户采纳过TA的回答
知道答主
回答量:19
采纳率:100%
帮助的人:9.9万
展开全部
1.首先,如果你是想在这个方法里面继续执行,那么使用finally语句即可,即如下:
看样子你是想使用try catch结构,那么你没有写catch 啊
try {
可能会出现错误的代码

}catch(Excpetion e){
抛出错误后该运行的代码

}
finally{
无论是否抛出错误都一定会运行的代码

}

2.如果你是在这个方法中抛出错误,但是是提交给外面调用的方法解决,那么就只需要把你需要继续执行的代码写在外面即可,即如下:
A方法是可能报错的
你要在A里面加上throw或者throws语句,具体这个怎么用,不知道你会不会啊,你可以百度一下,有两种用法,方法头 和 方法中
B方法调用了A,那么把你需要继续执行的代码写在B里面,调用完A,不管报错与否都会继续运行。
匿名用户
2015-06-05
展开全部
使用

int b=-1;

try{ b=sc.nextInt(); }catch(Exception ex){ sc=new Scanner(System.in); }
if(b=-1){
System.out.println("输入有误");
return;

}

如果想一直到输入正确再继续,则要修改一下

int b=-1;
while(true){

try{

b=sc.nextInt();
break;

}catch(Exception ex){
sc=new Scanner(System.in);
System.out.println("输入有误,请重新输入:");
}
}

(谨供参考)
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式