除常用方法(如getXxx/isXxx)等外,不要在条件判断中执行复杂的语句,将复杂逻辑判断的结果赋值给一个有意义的布尔变量,以提高可读性。

说明:很多if语句内的逻辑相当复杂,阅读者需要分析条件表达式的最终结果,才能明确什么样的条件执行什么样的语句,那么,如果阅读者分析逻辑表达式错误呢?
           
Negative example:(负面的例子)
    if ((file.open(fileName, "w") != null) && (...) || (...)) {
        ...
    }
   
       
           
Positive example:(正面的例子)
    boolean existed = (file.open(fileName, "w") != null) && (...) || (...);
    if (existed) {
        ...
    }

转载于:https://www.cnblogs.com/super-chao/p/8425390.html

不要在条件判断中执行复杂的语句相关推荐

  1. if条件判断中的-z到-d的意思

    shell if条件判断中的-z到-d的意思 [ -a FILE ] 如果 FILE 存在则为真. [ -b FILE ] 如果 FILE 存在且是一个块特殊文件则为真. [ -c FILE ] 如果 ...

  2. ef执行原生sql语句_EF Core中执行原生SQL语句

    一.课程介绍之所以今天录制这个系列文章的主要原因是,想在快速帮助到大家上手在ASP.NET Core WebAPI中结合EF Core来操作我们的数据库.EF Core的基础文章和基础课程实在是太多了 ...

  3. oracle中执行动态sql语句吗,oracle中有没有可动态执行sql语句的函数

    oracle中有没有可动态执行sql语句的函数 关注:233  答案:2  手机版 解决时间 2021-03-05 15:53 提问者祗剩寂寞 2021-03-04 22:38 oracle中有没有可 ...

  4. thinkphp mysql 预处理_thinkPHP框架中执行原生SQL语句的方法

    本文实例讲述了thinkPHP框架中执行原生SQL语句的方法.分享给大家供大家参考,具体如下: 怎样在thinkphp里面执行原生的sql语句? $Model = new Model();//或者 $ ...

  5. PlSqlDev中执行INSERT SQL语句包含符号导致数据异常

    PlSqlDev中执行INSERT SQL语句包含&符号导致数据异常 参考文章: (1)PlSqlDev中执行INSERT SQL语句包含&符号导致数据异常 (2)https://ww ...

  6. oracle中执行某sql语句后,如一系列delete、update等操作,怎么看影响的行数?如我执行了n个表的delete语句,得看我删除了多少数据,万一sql写的有问题,误删了数据,不是灾难?

    oracle中执行某sql语句后,如一系列delete.update等操作,怎么看影响的行数?如我执行了n个表的delete语句,得看我删除了多少数据,万一sql写的有问题,误删了数据,不是灾难? 使 ...

  7. if中return语句作用/条件判断中如何退出函数

    在循环中,可以通过break语句退出循环: 在条件判断if中,可以采用return语句退出当前函数. if(!SD.begin(4)){Serial.println("initializat ...

  8. PB中执行动态SQL语句(温故知新)

    转自:http://blog.sina.com.cn/s/blog_538f907c0100fak4.html PowerBuilder的嵌入式SQL语句只能支持一些固定的标准的SQL语句,即在进行程 ...

  9. shell中执行某条语句失败能不能重复执行_如何理解Mysql中的事务隔离级别?

    要说清楚Mysql中的事务隔离级别,我们先从事务的定义说起.事务,是一个或一组sql语句组成的一个执行单元,这个执行单元要么全部执行,要么全部不执行.整个单独单元作为一个不可分割的整体,如果单元中某条 ...

最新文章

  1. .NET简谈组件程序设计之(详解NetRemoting结构)
  2. (四)Thymeleaf标准表达式之——[3-6] 操作符(文本、算术、布尔、比较及相等)...
  3. deepin关机卡在图标界面 mysql Community...10min
  4. beyond compare类似软件_BIM工作是什么?需要哪些BIM软件来完成?
  5. python观察日志(part5)--判断对象是否为空
  6. 调试 不弹出 小米_时隔六年,小米NFC碰碰贴复活,碰一下自动亮灯、联网、投屏...
  7. 《软件需求分析(第二版)》第 15 章——变更管理 重点部分总结
  8. 使用Socket类接收和发送数据
  9. 2008R2 RDS架构
  10. 我搭的神经网络不work该怎么办!看看这11条新手最容易犯的错误
  11. uni-app 自定义loading 自定义toast 兼容小程序APP
  12. 获取csdn 积分和c币方法指南
  13. 6. 生信技能树——TCGA癌症数据1
  14. PDF在线预览插件:PDFObject web端预览(不支持手机网页预览,手机网页预览见下一篇博客);
  15. OpenCASCADE6.8.0 Reference Manual Serach Problem
  16. 【leetcode-字符串】:重复的子字符串(是否由它的一个子串重复多次构成)
  17. JavaScript程序库jQuery学习笔记分享(二)jQuery对象和DOM操作,和其他js库冲突处理
  18. 【顶】(与同事合作的快乐)技术人员也需要先学会做人,再学会做事,再是能成事,最后是成名得利...
  19. PacBio下机数据解读
  20. linux内核空间内存动态申请

热门文章

  1. 外部环境对电路的影响
  2. 【QT/C++】基于QT开发的一款A-SOUL元素的视频播放器(附源码)
  3. 【计算机组成原理与体系结构】控制器
  4. Windows开启移动热点后,电脑无法上网
  5. 计算机等级考试,一级,二级,三级,四级,未来教育系统
  6. 集成阿里云OSS编写AliyunOSSUtil
  7. [书籍].Pong P. Chu - FPGA Prototyping By Verilog Examples
  8. 郭明錤连发8条猛料!爆苹果MR头显最新进展
  9. SLF4J的错误汇总
  10. Photoshop-avi-gif-合集