何时使用Case和If / Else?

很多时候,我发现自己过度使用了if / elsif / else语句。 每当我需要确定某个条件是对还是错时,我的头脑都会自动考虑使用if / elsif / else语句。 但是,当您不得不考虑无数种情况时,会发生什么? 我最终不得不编写大量代码,而代码最终看起来像一团糟。 不要误会我的意思,我喜欢if / elsif / else声明,但是一切都有时间和地点。

if / else语句使我们可以根据特定条件是否成立来创建不同的代码路径。 例如,在此代码中,我们正在检查饥饿水平在某些值之上。 如果饥饿程度超过7,则我们要熄灭“您的肚子在咆哮。我需要吃!!” elsif熄灭“我有点饿,但我可以等一下吃。” 否则熄灭“我”上一顿饭真是太饱了。”

if / else语句将始终先运行代码的第一行,以查看条件是否返回true,然后,如果前一个条件返回false,则将运行以下elsif,直到end语句为止。

当您需要检查有限数量的条件语句时,使用if / elsif / else语句会很方便,但是当条件语句开始变得不堪重负或者其他if / else语句中包含if / else语句时,可以很难遵循,而且对用户也不是很友好。

case语句使用case,when和else作为关键字。 当您要针对多个条件测试单个值时,我发现用case语句最方便。 例如,在此CLI中,case语句用于单个值response。 case语句检查以明确查看变量响应输入是什么,并根据响应输出某些方法。

我觉得当使用case语句而不是if / else语句时,我可以更具体地说明我想要的条件。

case语句也可以与值可以属于的数字范围一起使用。 例如,它可以查看等级的值是否在100到90、89到80、79-70、69-60或更低之间,并在屏幕上打印与之相关的等级。

判决

根据我的理解,我认为在涉及多个条件时最好使用case语句。 查看嵌套在一起的一堆if / else语句可能会很麻烦,因此在这种情况下使用case语句对用户更友好且更易于阅读。 根据我在第一个项目中的经验,我在运行文件中有一堆if / else语句。 它使文件显得笨拙,混乱,并且很难从视觉上看到。 当我切换到case语句时,它变得更加简洁和易读。 我很高兴编写更多代码,看看在哪里使用if / else和case语句的eat实例将是最有效的!