话不多说,我们直接弄两个例子出来看看。
一个是tryOutside,就是try在for循环外面。
一个是tryInsidr,就是try在for循环里面。
还有一个是自定义运行异常CusException。
代码很容易,就是当i == 3的时候,就抛出一个自定义运行时异常。对比两种运行结果,我们来看看。
运行结果:
所以也可以得出结论:
try在for循环外面的话,他会终止整个for循环;
try...catch在for循环里面的话,不会终止整个for循环,会执行完整个for循环。
那么什么时候要放外面,什么时候放里面呢,取决于你的使用场景是否要终止。比如有这么一个场景:
我要看看那一批货物产品的不合格零件有多少个,但是如果超过2个的话,就不做继续的统计了。那么这时候我们就可以将try...catch放在for循环外面终止整个for循环。
如果我们就是要统计这一批货物的不合格数是多少,不想终止的话,那么我们就将try..catch放在for循环里面。
我们看运行结果,最终还是走完了整个for循环,还是可以统计出不合格数是50。
总结:
try在for循环外面的话,他会终止整个for循环;
try...catch在for循环里面的话,不会终止整个for循环,会执行完整个for循环。
最后:
如果大家觉得这篇文章对你们有所帮助的话,麻烦给个免费的赞赞,谢谢,也祝各位码农在未来的IT道路上越走越远。