A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© vipzh 中级黑马   /  2012-12-3 10:00  /  1254 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

    private boolean isEligible(int age){
          boolean result;
         if(age > 18){
                result = true;
         }else{
             result = false;
         }
   }为什么说这样的方法不推荐使用,这样写有问题吗?

评分

参与人数 1技术分 +1 收起 理由
古银平 + 1 神马都是浮云

查看全部评分

3 个回复

倒序浏览
private boolean isEligible(int age){
          boolean result;
         if(age > 18){
                result = true;
         }else{
             result = false;
         }
   }
你都没return肯定不行的,而且你那样写代码也复杂,还要多生成一个局部变量并赋值,浪费内存资源,降低了程序的执行效率。
private boolean isEligible(int age){
                         if(age > 18){
                                return true;
                         }
                         return false;
                   }

评分

参与人数 1技术分 +1 收起 理由
古银平 + 1 神马都是浮云

查看全部评分

回复 使用道具 举报
不推荐使用是因为这段代码易于理解和维护。
这里我引用 http://blog.sina.com.cn/s/blog_66cfbaa501011uuv.html中的一些建议。
1.避免在方法中出现多个return语句(退出点)
2.简化if-else方法
private boolean isEligible(int age){
         return age > 18;
        }

评分

参与人数 1技术分 +1 收起 理由
冯海霞 + 1 神马都是浮云

查看全部评分

回复 使用道具 举报
哥们飘过..
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马