聊聊跟三哥三姐面试和共事的经历

一亩三分地论坛

 找回密码
 Sign Up 注册获取更多干货
E轮2.5亿美元融资
K12教育独角兽一起作业
北京-诚聘人工智能/教育/大数据岗
坐标湾区
Games Startup
招聘游戏开发工程师
游戏初创公司招聘工程师、UIUX Designer和游戏策划
码农求职神器Triplebyte:
不用海投
内推多家公司面试
把贵司招聘信息放这里
查看: 2362|回复: 1
收起左侧

[学Java/C#] Java try/catch 作为判断条件使用 求教

[复制链接] |试试Instant~ |关注本帖
ldpraymond 发表于 2016-1-4 20:47:04 | 显示全部楼层 |阅读模式

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看,没有帐号?Sign Up 注册获取更多干货

x
大家好,关于 try/catch 有个问题,望大神们求解。

在解 Evaluate Polish Notation 题目中,原本我采用了 try/catch 让代码更 generic,可以扩展更多运算操作。代码如下:
  1. for(String str: tokens) {
  2.             try {
  3.                 int num = Integer.parseInt(str);
  4.                 stack.push(num);
  5.             } catch (Exception e){
  6.                 int num2 = stack.pop();
  7.                 int num1 = stack.pop();
  8.                 int num = helper(num1, num2, str);
  9.                 stack.push(num);
  10.             }
  11.         }
复制代码
查看了 stackOverflow 相关内容,这么使用 try/catch 是很不好的。有兴趣的朋友可以看一下:http://stackoverflow.com/questio ... -try-catch-overhead

但是,以前也见过使用 try/catch 来作为判断条件的,例子如下:
  1. public boolean isLong(String str) {
  2.     try {
  3.         Long.parseLong(str);
  4.     } catch(Exception e) {
  5.         return false;
  6.     }
  7.     return true;
  8. }
复制代码
求大神科普一下,感激不尽!





Screen Shot 2016-01-04 at 07.41.12.png
donnice 发表于 2016-1-5 06:22:44 | 显示全部楼层
感觉一般用于判断的情况用一个普通的ifelse就可以了,try/catch是用来终止程序运行并且抛出异常的。非要说这么做为什么不好的话,可能如果if的可能性变多了,比如从if else到if else if...... , else这种情况,你的代码扩展性就不好了
回复 支持 反对

使用道具 举报

全球28万学生4.7分推荐

本版积分规则

提醒:发帖可以选择内容隐藏,部分板块支持匿名发帖。请认真读完以下全部说明:

■隐藏内容方法: [hide=200]你想要隐藏的内容比如面经[/hide]
■意思是:用户积分低于200则看不到被隐藏的内容
■可以自行设置积分值,不建议太高(200以上太多人看不到),也不建议太低(那就没必要隐藏了)
■建议只隐藏关键内容,比如具体的面试题目、涉及隐私的信息,大部分内容没必要隐藏。
■微信/QQ/电子邮件等,为防止将来被骚扰甚至人肉,以论坛私信方式发给对方最安全。
■匿名发帖的板块和方法:http://www.1point3acres.com/bbs/thread-405991-1-1.html

关闭

一亩三分地推荐上一条 /5 下一条

手机版|小黑屋|一亩三分地论坛声明

custom counter

GMT+8, 2018-5-23 00:16

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

快速回复 返回顶部 返回列表