为什么if语句优先于switch语句?

轻度丢失

我是从头开始编程的新手,但是有阅读和修复代码的经验。通过实际的课堂学习,我注意到与Switch语句相比,在IF语句上实现的更多。有什么区别?为什么学习材料总是想要if语句?

我看过一些关于stackoverflow的不同文章,但是它们都是针对特定问题的,这从头开始编写脚本时就更具全局性。

新鲜

如果陈述

  • 允许检查多个状态,这通常是必需的。
  • 允许使用比switch语句少得多的代码来检查单个布尔值
  • 提供通常更易于遵循的逻辑,尤其是嵌套时比开关更容易理解的逻辑

切换语句

  • 允许轻松检查一种状态并具有多种可能的变化。当存在3种以上可能的状态时,此功能最为有用。
  • 允许轻松添加和处理新的可能状态。这对于将来扩展应用程序很有用。例如,如果将来API可能包含更多路由。
  • 允许对状态进行简单分组,这些状态将以相同方式或非常紧密地进行处理。这也非常清楚并且易于调整。

它们都有优点,但是如果有if之类的东西,使用switch语句就更合适

作为开发人员,您会选择合适的工具来完成工作,并且如果某项功能或多或少与性能相同,更多或与之一样清晰且允许使用更少的代码,那么通常会使用它。

还值得注意的是,在某些情况下,您可能会在开关中使用if语句。没什么好说的,您必须使用其中之一,而这一切都取决于组织,代码的可读性和实用性


作为附带说明,因为您提出了课程作业...

看,处于发展过程中和处于野外的动物是截然不同的。我亲眼看到过可怕的大学课程,从字面上教给有抱负的开发人员,不过是if ... else if ... else控制语句。我曾经看过一个刚毕业的代码,从字面上看(我的意思是从字面上看),这些语句中的许多都是通过简单的Array检查就足够了,并且可以节省时间,一百多行代码以及其他所有人的理智。该项目(即我)。

学校就是学校。即使他们并不是最实际或最有效的方法,也可以按照他们的意愿进行工作,但是当您进入该领域时,请记住,通常会有更好的方法。

我之所以仅提及这一点,是因为您可能已经看到一些让您说“但为什么我不只是做X? ”的内容。我在这里告诉您,您可能是对的,所以请保持警惕。自行研究,并随时询问有更多经验的人。好奇心是优秀开发人员的标志,进入该领域后,您将变得更加有能力和更有价值。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

为什么列表优先于队列?

来自分类Dev

为什么双倍优先于浮动?

来自分类Dev

为什么我的程序忽略了switch语句?

来自分类Dev

为什么此switch语句不运行?

来自分类Dev

一个if语句优先于另一个if语句,尽管该语句较低。

来自分类Dev

为什么or语句比in语句快?

来自分类Dev

为什么指针衰减优先于推导的模板?

来自分类Dev

为什么将seq优先于非空作为谓词?

来自分类Dev

对于重载方法,为什么类型提升优先于varargs

来自分类Dev

为什么初始化列表优先于分配?

来自分类Dev

如果if语句起作用,为什么switch不起作用

来自分类Dev

为什么C ++要求在switch语句中中断?

来自分类Dev

为什么我的switch语句不起作用?

来自分类Dev

为什么switch语句中的个案没有自己的范围?

来自分类Dev

为什么在switch语句中不能有重复的案例?

来自分类Dev

为什么我的JavaScript switch语句不起作用?

来自分类Dev

为什么我的单元测试未能通过switch语句?

来自分类Dev

为什么此switch语句在Angular上不起作用?

来自分类Dev

为什么对布尔switch语句有编译器警告?

来自分类Dev

为什么不在switch语句中处理char?C ++

来自分类Dev

为什么此switch语句无法识别subString?

来自分类Dev

为什么在switch语句中最终的Byte不能编译?

来自分类Dev

为什么此switch语句不起作用?

来自分类Dev

为什么我的JavaScript switch语句不起作用?

来自分类Dev

为什么常量字符会破坏 Loop 和 Switch 语句

来自分类Dev

为什么我不能在类中放置 switch 语句

来自分类Dev

为什么我需要指定 $switch default 语句而它是可选的?

来自分类Dev

为什么我的 switch 语句只运行一次?

来自分类Dev

为什么if语句被忽略?

Related 相关文章

热门标签

归档