switch语句

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了switch语句相关的知识,希望对你有一定的参考价值。

当我们发现自己在if表达式中使用了太多的else if子句时,就应该要考虑使用switch语句来替代if了。

看下面的例子:

技术分享

 

result获取到的是文本框输入的值,typ="text"输出的是字符串类型的值

我们这里定义了变量a="1",将result去跟a比较,如果一样就会弹出警示框

  我们来分析一下,switch表达式主要由那几部分组成。

    1??括号中的表达式。它通常会是一个变量,也可以是其他任何能提供返回值的东西。就是switch()这个括号中的内容。

    2??包含在大括号case序列块。

      每个case语句后面有一个表达式,该变大时的结果将会与switch语句的表达式进行对比。如果对比的结果为true,则case语句中冒号之后的代码将会被执行。

    3??break语句,它实际上是case块的结束符,即当代码执行到break语句时,整个switch语句就执行完成了。

    4??如果case条件都不为true,default条件就会被执行。

  

  换句话说,整个switch语句的执行应该可以分为以下几个步骤:

    1??对switch语句后面的括号部分进行求值,并记录结果

    2??移动到第一个case条件,将它的值与步骤1的结果进行对比

    3??如果步骤2中的比对结果为true,则执行该case块中的代码

    4??在相关case块执行完成之后,如果遇到break语句就直接退出switch

    5??如没有遇到break或步骤2中的对比结果为false,就步骤2中的比对结果为false,就继续下一个case块

    6??重复步骤2到5中的操作

    7??如果依然还没有结束(也就是始终未能按照步骤4中的方式退出,就执行default语句后面的代码块)

以上是关于switch语句的主要内容,如果未能解决你的问题,请参考以下文章

switch语句 switch语句的相关知识

switch case语句和if的区别

switch语句怎么用啊 具体啊!

switch语句的用法?

c语言中switch可用啥语句替换

如何在switch语句中选择一个值范围