2016 - 2024

感恩一路有你

数组元素的下标 ifelse和switch的区别?

浏览量:1714 时间:2021-03-15 18:30:33 作者:admin

ifelse和switch的区别?

你好,我是继续绽放的花朵。我很高兴为你回答。两者的本质区别在于if-else语句更适合区间(range)的判断,switch语句更适合离散值的判断。用2个例子来判断65到85之间的哪些学生适合使用if-else语句,因为[65,85]是判断学生的班级是1班、2班还是3班的区间,所以切换句是合适的,因为1班,类2和类3是离散值3所有的switch语句都可以被if-else语句替换(因为if-else语句只需要分别判断每个离散值),但不是所有的if-else语句都可以被switch语句替换(因为间隔中的值的数目是无限的,switch接收到的值只能是必须是整数或枚举,因此不能使用case逐个枚举它们)。比较专业的理科知识,欢迎关注我。如果你喜欢我的回答,也请给我表扬或转发,你的鼓励是支持我写下来的动力,谢谢。

if多分支语句和switch语句的异同之处?

相似之处:都可以处理多分支情况。区别:if语句的判断条件大多是bool类型,switch语句通过(相似)枚举来标识每个分支

答:主要是switch不适合业务系统的实际复杂需求。业务在不断变化和迭代。一旦需求发生变化,条件的复杂性就很高,交换机无法处理。

开关何时合适?它的场景是基于单个变量的值(例如枚举),这比if条件更可读。

从上面的场景来看,它太有限了。让我简单地谈谈它的一些缺点:

1。真正的业务场景非常复杂,条件也不单一。一旦需求发生变化,维护代码就会崩溃。

2. 开关经常忘记写中断。据估计,很多人都忘了粗心地写。如果你看看Google的代码规范,你会发现Google对switch有很多要求。

事实上,有些人仍然使用交换机,这部分是由于历史原因。然而,随着科学技术的发展,原有的设计和设计都相对滞后。

某些编程语言(如python)没有开关语法。当然,一些新的语言golang和kotlin仍然是继承的,但是switch被打包了,被误解的语法被删除了,这使得switch更加灵活。没有包装很难使用。

通过上述缺点,即if语句更加灵活,并且根据业务逻辑条件编写,可维护性高。同时,只要代码质量高,可读性就会更高。

实际业务非常复杂,我不建议您必须使用大量的if,相反,它应该尽快返回以减少嵌套,从而增加可读性并降低维护成本。

数组元素的下标 if与switch的区别 简述if和switch的异同

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。