百度空间 | 百度首页 
 
查看文章
 
编程基础讲解(switch的应用)
2009-08-23 18:03
除了if.....else语句外还有switch语句也是可以拿来实现选择的.switch语句是多分支选择语句.if语句只有2个分支可以选择,实际上我们常常需要用到多分支的选择.例如学生的成绩有90以上为A,80以上为B,70以上为C等等.当然如果用嵌套if语句也是可以实现的,但是相对来说就太麻烦了.if语句的嵌套层数多,程序冗长而且读起来很难理解.
as提供了switch语句来解决这一难题.一般形式如下:
switch(表达式)
{ case 常量表达式1:语句1;
case 常量表达式2:语句2;
case 常量表达式n:语句n;
default: 语句n+1;
}
说明一下:1) switch后面的表达式,允许为任何类型(整型,字符串等等)
2) 当表达式的值和后面花括号里某一个case后面的常量表达式的值相等时,就执行case后面的语句,若所有case后面的常量表达式的值都没有和switch后的表达式的值相匹配,就执行default后面的语句.
3) 每一个case后面的常量表达式的值必须互不相同,否则就会出现自相矛盾的现象(对表达式的同一个值,有两种或多种执行方案).
4) 各个case和default的出现次序不影响执行结果.例如可先出现default再出现case
5) 执行完一个case分支后,流程控制转移到下一个case继续执行,case常量表达式只是起语句标号的作用,并不是在该处进行条件判断,在执行switch语句时,根据switch后面的表达式的值找到匹配的入口标号,就从此标号开始执行下去,不再进行判断.
因此应该在执行完一个case分支后,使流程跳出,switch结构,即中止switch语句的执行.可以用break语句来达到此目的.如下:
switch(表达式)
{ case 常量表达式1: 语句1; break;
case 常量表达式2: 语句2; break;
case 常量表达式n: 语句n; break;
default: 语句n+1;
}
最后一个流程default不可以+break语句.
在case后面虽然包含一个以上的执行语句,但可以不必用花括号括起来,会自动顺序执行笨case后的所有语句,当然加上花括号更好了.
6) 多个case可以共用一组执行程序:
:
:
case ’A’ :
case ’B’ :
case ’C’ : Stop();
:
switch后面的表达式的值为ABC时都执行Stop语句.
先讲这些要去上课了,等上完课再来详细解释这些.大家先看看能否理解.
现在用实例来说明switch语句,下面这个程序是显示今天是星期几.
新建一文件,写一动态文本,并命名day.



新建一层,在帧上添加如下语句:
mydate = new Date(); //创建一个新的日期对象.
a = mydate.getDay(); //获取本地日期是星期几.并赋值给变量a
switch (a) {
case 0 : //a值为0的话,执行语句day="星期天",执行后跳出switch
day = "星期天"; 结构.
break;
case 1 : //道理相同!
day = "星期一";
break;
case 2 :
day = "星期二";
break;
case 3 :
day = "星期三";
break;
case 4 :
day = "星期四";
break;
case 5 :
day = "星期五";
break;
case 6 :
day = "星期六";
break;
}测试一下看看!




测试时,动态文本显示为星期一,date.getday()函数是按照本地时间返回指定 Date 对象中表示周几的值(0 代表星期日,1 代表星期一,依此类推)。
这就是switch语句的应用.大家是否明白了呢?

类别:软件教程 | 添加到搜藏 | 浏览() | 评论 (0)
 
最近读者:
 
网友评论:
发表评论:
姓 名:
网址或邮箱: (选填)
内 容:
验证码: 请点击后输入四位验证码,字母不区分大小写
      

     

©2009 Baidu