首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何优化冗长条件语句

前言 我不讨厌简短 if else,但是对于很长并且负责 if else 就极其感到不舒服了,代码不但看起来难懂不雅, 关键是维护起来也是一大坨,生怕弄错了之前逻辑。...一、尽量少用 else 尽量多用 if reture 语法方式 当一些条件语句难以让人看清他目的时, - (void)showName:(NSString *)name { if (name...//render A; } else { //render B; } } } 那么,如何用多态来重写上面的类呢?...这个例子太简单,可以看这篇文章中例子:使用state pattern替代if else,就会发现使用多态替代条件语句不但优雅化了,而且在复杂情况下是必须要这样处理了。...参考文章: UIViewController瘦身计划(iOS架构思想篇) 用多态替代条件语句 重构那些事儿 iOS中条件语句优化 使用state pattern替代if else 足智多谋策略模式

1.3K10

javaif else语句入门

大家好,又见面了,我是全栈君 条件语句,是程序中根据条件是否成立进行选择执行一类语句,这类语句在实际使用中,难点在于如何准确抽象条件。...1 、if语句 if关键字中文意思是如果,其细致语法归纳来说总共有三种:if语句、if-else语句和if-else if-else语句,下面分别进行介绍。...1.2 if-else语句 if-else语句实现了封闭条件,在程序中使用更加常见。其中else关键字作用是“否则”,即条件不成立情况。...if语句结构,提供了一类专门多分支语句,这就是if-else if-else语句。...if-else if-else语句是Java语言中提供一个多分支条件语句,但是在判断某些问题时,会书写比较麻烦,所以在语法中提供了另外一个语句——switch语句来更好实现多分支语句判别。

1.3K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【Python】判断语句 ② ( if else 语句 | if else 语句语法 | Python 中空格缩进 | 代码示例 )

    一、if else 语句语法 if else 语句语法 : if 条件判定: 满足条件要执行代码1 满足条件要执行代码2 满足条件要执行代码3 else: 不满足条件要执行代码1 不满足条件要执行代码...: if 条件判定 和 else 后面 冒号很重要 , 一定要写上 ; 4 空格缩进 : 条件判定满足 执行代码 , 和 条件判定不满足要执行代码 , 之前有一个 四个空格 缩进 ; else...与 if 是同级 , 前面不加缩进 ; else 代码块也需要添加 4 空格缩进 ; 二、Python 中空格缩进 Python 语言中 , 通过空格缩进 , 判断代码归属 , 相当于 其它语言...语句代码示例 """ # 通过 input 从命名行获取都是字符串类型 input_string = input("请输入年龄 : ") # 将字符串转为 int 整型 age = int(input_string...) # 判断年龄 if age < 18: # 判定条件通过执行代码 print("购买儿童票") else: # 判定条件不通过执行代码 print("购买成人票

    23120

    代码重构之道:消灭冗长if语句,提升代码质量

    当我们重构代码时,去除代码中 if语句通常是一个很好目标。 if语句可能会使代码变得复杂,难以维护,容易引入 bug。本文将介绍一些去除 if语句常见方案和代码示例。 1....使用多态 多态是一种面向对象编程技术,它允许我们根据对象具体类型来调用方法。通过使用多态,我们可以去除一些条件判断语句。...使用策略模式 策略模式是一种设计模式,它将算法封装在独立策略类中,然后在运行时选择适当策略。这可以帮助我们避免大量 if语句。...,还有设计模式中工厂模式、观察者模式、装饰者模式等,都可以帮助我们去除代码中if语句,提高代码可维护性和可扩展性。...具体方法取决于代码具体情况和需求。 重构代码以去除 if语句可能需要一些额外工作,但通常是值得,因为它可以使代码更加清晰、可读和易于维护。希望这些示例对你有所帮助。感谢你阅读!

    18840

    Java中我如何去除if...else...语句

    而且,我们是去除if…else语句,这样方式虽然好像没有了if…else语句,但是本质上并不是最好方式,只是提供了一种思维方式。...读《重构 改善既有代码设计》有一条就是,以多态取代条件表达式。这是才是最本质解决方式。 这里去除if…else语句,不是遇见了if…else语句就去除。...而且,一般来说编程语言都有switch语句去替代if…esle…语句。从性能上看这两个语法也只有非常细微差别,根本无需关心自己使用了哪个语法。...小结 由于偶然读到别人技术博客关于if…else取代文章,发现这也是一个思路,但是不够那么好,于是记录下《重构 改善既有代码设计》一个以多态取代条件表达式范例。...虽然这样确实处理了if…else语句,但是一旦使用多态取代条件表达式方式,必定会引入一个继承或者实现体系,其实,这是增加了理解复杂度。

    1.8K10

    谈谈代码:如何避免写出糟糕if...else语句

    版本 日期 备注 1.0 2019.1.18 文章首发 1.1 2021.5.21 改进标题标点符号 在写代码日常中,if...else语句是极为常见.正因其常见性,很多同学在写代码时候并不会去思考其在目前代码中用法是否妥当....而随着项目的日渐发展,糟糕if...else语句将会充斥在各处,让项目的可维护性急剧下降.故在这篇文章中,笔者想和大家谈谈如何避免写出糟糕if...else语句....三元表达式 三元表达式在代码中也是较为常见,它可以简化一些if...else,如: public Object getFromOpaque(String key) { return......else语句.在这一节,我们将会提到下面几个设计模式: State模式 Mediator模式 Observer模式 Strategy模式 1....Mediator模式 在本文第一段代码中,其实是ZStack 2.0.5版本中某处代码,它用来防止用户使用Cli时传入不当参数,导致后面的逻辑运行不正常.为了方便理解,我们可以对其规则做一个简化

    12010

    if-else 判断语句过多该如何处理?

    一、简介 我们平时在写代码时候,if-else判断语句基本上必不可少,当我们判断语句只有一两层时候,类似下面这种,情况还好,基本上能接受; if(condition){ doSomeThing...(); } else { doSomeThing(); } 但是当过度使用if-else时候,会对代码可读性、可扩展性造成负面影响,比如类似下面这个!...因此,如何去除掉代码中过多if...else语句,反映是程序员对软件重构、设计模式、面向对象设计、架构模式、数据结构等多方面技术综合运用能力。...那问题来了,如何解决代码中过多if...else语句呢?下面一起来聊聊有效几种解决方案! 二、解决方案 首先,我们编写一个简单程序计算器,代码如下!...五、参考 1、baeldung java-replace-if-statements 2、知乎 - 如何去除代码中过多if语句

    55320

    原生基础判断语句中switch语句和if else if语句区别

    条件判断语句是程序开发过程中一种经常使用语句形式,和大部分编程语言相同,JavaScript 中也有条件判断语句。...JavaScript三种条件语句: 1、“if else语句,语法“if(条件){...}else{...}”; 2、“switch...case”语句; 3、三元运算语句,语法“条件表达式 ?...其实不管在js原生也好在python或者java中或者c中都有:switch语句和if else if语句 你会发现他们有的时候可以互换,那有人就问,那为什么要出两种相同条件语句呢?...}else if(score >=60){ alert('不及格') } 3.switch语句进行条件判断后直接执行到程序条件语句,...而if...else语句由几种条件,就得判断多少次。 4.当分支比较少,if.....else语句执行效率比switch语句更高! 5.当分支比较多时,switch语句执行效率较高,而结构更加清晰

    1.2K20

    如何减少冗长变量声明代码行数

    减少冗长变量声明代码行数有几种方法,具体取决于编程语言和上下文。以下是一些常见技巧:问题背景在编写代码时,经常需要定义许多变量和参数。如果这些变量和参数过多,会导致代码行数增加,可读性降低。...代码例子以下代码演示了如何使用变量组和字典来减少冗长变量声明代码行数:import argparse​# Standard input module to absorb commands from CLIparser...instance_object'])print(variables['instance_id'])输出结果source_tabledestination_tableinstance_object12345这些技巧可以帮助我们减少冗长变量声明...,提高代码可读性和简洁性。...选择合适技巧取决于我们具体需求和编程语言特性。如果有任何代码上问题可以截图一起讨论。

    7410

    深入了解 Golang 条件语句:if、elseelse if 和嵌套 if 实用示例

    = y (x > y) && (y > z) (x == y) || z Go具有以下条件语句: 使用if来指定在指定条件为真时执行代码块 使用else来指定在相同条件为假时执行代码块 使用else...else语句 使用else语句来指定在条件为假时执行一段代码。...语法 if 条件 { // 如果条件为真,则执行代码 } else { // 如果条件为假,则执行代码 } 使用if else语句示例: 示例 在此示例中,时间(20)大于18,因此if条件为假...} } else语句括号应该像} else {这样写: 示例 将else括号放在不同行会引发错误: package main import ("fmt") func main() { 温度.../prog.go:9:3: 语法错误:意外 else,期望 } else if 语句 使用 else if 语句在第一个条件为假时指定新条件。

    1.1K00

    python else语句在循环中运用详解

    在学习python循环语句时候,发现else竟然可以和循环语句使用,但是它却与if中else语句运行完全不同,有时候你真的感觉掉进这个else陷阱里了,完全不知道该怎么用,那么现在咱们一起去看看吧...2、其次else与那个循环对齐,那么这个else就属于那个循环,当这个循环正常结束后就会执行else语句,否则遇到break就会提前跳出循环,那么就将无法执行else语句 ​3、看代码,外循环要循环...else是i=奇数时候,条件不成立,所以会正常结束内循环,最后执行else语句。...由于内循环条件不成立,无法进入循环体,也就无法循环,所以将无条件执行else语句,那么也就是说当条件不成立时,就会无条件执行else语句 2、if_else运用 # 循环10次,拿到1-10...当循环正常结束时候,就会去执行else语句,若碰到break而提前结束,将不会执行else;当循环未能执行时候,会自动执行else语句 到此这篇关于python else语句在循环中运用详解文章就介绍到这了

    1.7K20

    TypeScript 中常用条件语句:`if`语句、`if-else`语句、`switch`语句和`三元运算符`

    本文将详细介绍 TypeScript 中常用条件语句,包括if语句、if-else语句、switch语句和三元运算符等。if 语句if语句是最简单和最常用条件语句之一。...if-else 语句if-else语句在if语句基础上增加了一个else代码块,用于在条件为false时执行另一段代码。...num小于或等于0时,if语句代码块将不会被执行,而是执行else代码块,输出结果为num 是负数。...多重 if-else 语句我们可以使用多个if-else语句来编写更复杂程序逻辑。每个if-else语句都会根据特定条件执行相应代码块。...switch 语句switch语句允许我们根据一个表达式值,在多个选项中选择一个执行。它可以替代多个嵌套if-else语句,使代码更清晰、易读。

    50120

    Java中大量if...else语句消除替代方案

    在我们平时开发过程中,经常可能会出现大量If else场景,代码显很臃肿,非常不优雅。那我们又没有办法处理呢? ? 针对大量if嵌套让代码复杂性增高而且难以维护。本文将介绍多种解决方案。...案例 下面模拟业务逻辑,根据传入条件作出不同处理方式。 拿一个计算器类当做案例,有加减乘除四种方法,输出结果和四种操作有关。...if ("multiply".equals(operator)) { result = a * b; } else if ("divide".equals(operator))...if...else不可避免,但滥用 if...else 会对代码可读性、可维护性造成很大伤害。...因此,使用好 if...else,让代码清爽对于你项目长远考虑有十分重要意义。

    2.4K10

    【说站】python else在循环语句执行情况

    python else在循环语句执行情况 1、当循环体没有执行break时候,即循环体正常结束。...= num:         print("10 == num,触发break,不会执行else子句")         break else:     print("循环体没有执行break语句,执行...else子句") print("程序结束") 两次输入机会 请输入一个数字:2 请输入一个数字:3 循环体没有执行break语句,执行else子句 程序结束 2、当while循环体完全不执行时,也会执行紧跟在后面的...else子句。...while False:     pass else:     print("循环体不执行,我也会执行") # 执行后输出结果: # 循环体不执行,我也会执行 以上就是python else在循环语句执行情况

    85820
    领券