if 语句与try catch的问题?什么区别,何时该用 try catch?

网上看到例子:-----------------------例子开始-------------------inta=200,b=0;intc;try{c=a/b;}cat... 网上看到例子:
-----------------------例子开始-------------------
int a=200,b=0;
int c;
try
{
c=a/b;
}
catch(...)
{
ShowMessage("Can not devided by zero!");
}
“可是如果上面的例子用if…else…,就不能够显示else后面的结果了。” (这句话也是拷贝来的)
-----------------------例子结束-------------------
我觉得是可以的
我完全可以判断它的除数啊

int a=200,b=0;
int c;
if(b==0){
ShowMessage("Can not devided by zero!");
}else{
c=a/b;
}
这样不就行了吗?
捕获异常 抛出 异常 是不是多此一举?
是不是这样?
比如我现在 正在 服务器上 写一个文件
这时候同时 有另一个人 也在操作这个文件
这个时候就可能会 有异常发生
这个时候是需要 try catch 的?
我怎么知道哪个地方会出现异常,比如我 压根就不知道 1/0 是错误的,我该怎么办?
展开
 我来答
卓兴富
高粉答主

推荐于2018-03-05 · 醉心答题,欢迎关注
知道大有可为答主
回答量:5628
采纳率:87%
帮助的人:539万
展开全部
  if可以进行简单的过滤, 但是, 由于机器或者说环境各异, 可能会产生一些无法预知的异常, 这是在开发阶段无法预知的, 所以就要用try...catch来捕捉, 而if是无法做到的.
  
  从程序结构上来说:
  if…else…属于程序结构中的分支结构;
  try…catch…应该属于程序结构中的顺序结构,虽然说在出现异常的时候编译器会跳到捕获异常的入口处,但这和传统意义上的if…else…结构存在根本性的差别.

  当不可预知有什么异常的时候,用try
  当过多情况需要处理,用if就会太繁琐
  当你需要观察的代码没有返回值的时候,if()当中没法作判断,必须用try
lqzcliff
推荐于2017-11-23 · TA获得超过368个赞
知道小有建树答主
回答量:460
采纳率:0%
帮助的人:240万
展开全部
是你想太多了,也许是你没什么经验吧,
try catch 是捕获异常,在一切有可能出现异常的地方都用.否则你的程序就有可能要崩溃.

你现在写的程序是在自己用,以后你给别人用,你又怎么知道别人会怎么样去输入呢?
所以,这不是多此一举,反而是非常有用的.

我自己的项目中就经常在输入数字的地方用try catch,这样比你去判断是不是输入了数字要方便得多.
当然这只是我的用法,不是最好的.
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式