C#定义了int number = int.Parse(Console.ReadLine());怎样保证输入字符的时候,报错呢?求容错代码!

 我来答
Reyzhang
2011-07-19 · TA获得超过1111个赞
知道小有建树答主
回答量:805
采纳率:85%
帮助的人:668万
展开全部
如果是你上述的代码,在输入非数值类型时是会报异常的。如果要捕获异常,你可以将你的代码加在try {} catch {} 中。如:
try{
int number = int.Parse(Console.ReadLine()); //如果类型转换失败,会跳到catch中
}catch(Exception ex) {
   throw new Exception(ex.Message,ex); //抛出异常
}

如果想自己自定义错误提示,也可以用int.TryParse ,用法如下:
int nResult=0;
if (!int.TryParse(Console.ReadLine())) {
//说明未转换成功,这里编写自定义的异常处理
}
ku521125
2011-07-19 · 超过20用户采纳过TA的回答
知道答主
回答量:72
采纳率:0%
帮助的人:50.5万
展开全部
你输入个字符串。或者是大于int类型的整数都会报错的!!!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wxbqlcz
2011-07-19 · TA获得超过120个赞
知道小有建树答主
回答量:94
采纳率:0%
帮助的人:61万
展开全部
string read = Console.ReadLine();
int number;
if(!int.TryParse(read,out number))
{
MessageBox.Show("error!");
}
追问
可以加你QQ教我一下嘛?
追答
上班时间,不能上QQ,不好意思,你把代码拷贝执行下就知道了
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ty68351114
2011-07-19 · TA获得超过716个赞
知道答主
回答量:253
采纳率:0%
帮助的人:151万
展开全部
你只需判断你输入的是否是0-9就行了。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式