AS入门教程第四课AS常用语句第二节-条件语句[原创][本文已收录教程库] - Flash...

来源:百度文库 编辑:神马文学网 时间:2024/04/26 03:08:14
 二.条件语句
                     

if 语句:如果怎么样,就做些什么事.可以把if理解为如果.


格式:
if(条件表达式){


要执行的语句


}


例:
a=7;


b=2;


if (a==b){



trace("是的");


}

这个条件语句的意思是,如果a等于b,那么就输出"是的".将上面代码写到帧动作面板中,测试影片,发现并没有输出面板弹出.因为上面的语句是a等于b时才执行trace("是的");,事实上现在a不等于b而是大于b,那么trace("是的");就不会执行.把代码改一下:

a=7;


b=2;


if (a>b){


trace("是的");


}

测试影片,那就会看到输出窗口中的"是的".

if…else语句:这句是如果怎样就执行if后面的语句,如果不是这样就执行else后面的语句.


格式:
if(条件表达式){


要执行的语句


} else {


要执行的语句


}


例:
a=7;


b=2;


if(a<=b){


trace("a比b小或一样大");


} else {


trace("a比b大");


}

看看这个代码,如果a小于等于b那么就输出:"a比b小或一样大".否则,就输出:"a比b大".测试影片,我们可以看到:"a比b大".
if…else if:这个语句可以测试多个条件.这样理解这个语句,如果怎样就干点什么,又如果怎样,又干点什么,再如果怎样….
还是这个例子:

a =7;


b=2;


if(a


trace("a比b小");


}
else if("a==b"){



trace("a和b一样大");


} else if(a>b){


trace("a比b大");


}

这段代码意思是:如果a小于b那么输出:"a比b小";如果a等于b那么输出:"a和b一样大";如果a大于b那么输出:"a比b大".测试影片,输出是:"a比b大".
switch语句:上面提到有要检测多个条件的情况,可以用多个else if,用switch语句也可以实现这个目的.

格式:
switch(表达式){


case 表达式的值:



要执行的语句


break;


case 表达式的值:


要执行的语句


break;




default:


要执行的语句


}

上面括号中的表达式也可以是一个变量,下面的大括号中可以有多个 case 表达式的值:,程序执行时会从第一个case开始检查,如果第一个case后的值是括号中表达式的值,那么就执行它后面的语句,如果不是括号中表达式的值,那么,程序就跳到第二个case检查,以此类推,直到找到与括号中表达式的值相等的case语句为止,并执行该case后面的语句.你可能会注意到每一句case后面都有一句breake;这是跳出switch语句的意思,即当找到相符的case,并执行相应的语句后,程序跳出switch语句,不再往下检测.以免发生落空的错误.可能会有这样的情况,所有的case语句后的值都与表达式的值不相符,那么就应该用default:
语句,这时程序就会执行default:
后的语句.如果你确定不会出现这种情况,那么可以不要default:
语句.

例1:
a=7;


b=2;


c=a+b;


switch(c){


case 5:


trace("小了");


break;


case 12:


trace("大了");


break;


case 9:


trace("对了");


break;


}

测试影片,输出句"对了".
例2.
a=7;


b=2;


switch(a+b){


case 5:


trace("小了");


break;


case 12:


trace("大了");


break;


case 8:


trace("还是小了");


break;


default:


trace("都没算对");


}

测试影片输出为:"都没算对".
逻辑运算符:逻辑运算符在运算符那一节没有介绍,是因为它多半用在条件语句中,所以我们在这一节介绍.在上面的条件表达式中,都是单一的条件,比如是否大于是否小于等,实际上我们经常都可能用到复合条件,比如大小多少并且小于多少,大于多少或者小于多少等.在这样的复合条件语句中,有两个词:并且、或者,它们的符号:
&&
并且


丨丨
或者

并且是指两个条件都成立时为真,或者是指只要有一个条件成立时为真.

例1:
a=7;


if((a>5)&&(a<10)){


trace("正确");


}

测试影片,将输出"正确".因为a=7的确即大于5又小于10,条件为真.

例2:
a=7;


if((a〉5)&&(a〉10)){


trace("正确");


}

测试影片,没有输出.说明 trace("正确");这句没执行.因为a〉5成立,而a〉10不成立,两个条件只有一个为真,整个条件则为假.

例3.
a=7;


if((a〉5)||(a〉10)){


trace("正确");


}

这个例子用的是"||"或者语句,只要有一个条件为真,整个条件表达式为真,测试影片,将输出"正确".
练习:猜数游戏
下面我们来做一个练习,猜数游戏,将上一节运算符及本节条件语句进行综合应用.游戏是由程序产生一个0-100的随机数,然后由用户来猜,程序根据用户猜的数与所产生的随机数进行比较,根据比较结果,给用户提示,直到用户猜中为止,并记录用户所猜次数.

为完成这个练习,我们先介绍一个函数:random(),这个函数将产生一个由0到括号中的数减1的整数.如: a=random(50),那么a的值为0到49之间的一个整数.

现在来做这个练习:新建一flash文件,用文本工具在舞台的上半部居中画一个文本框,在里面输入:”请猜一个0-100之间的数字:”;打开属性面板,设置文本框为静态文本,设置好文本字体的大小和颜色.
在这个文本框的下边,再画一个文本框,打开属性面板,设置文本框为动态文本,在变量框中输入c,这样变量c就代表这个文本框的内容,我们就可以用c来读取和设置这个动态文本框的内容.动态文框是在运行时可以给文本设置值的文本框.关于文本框的的知识,在后面将有专门的课程介绍,这里了解这么多就行了.
在动态文本框的下面,再画一个文本框,打开属性面板,设置文本框为输入文本.将在文本框周围显示边框按钮点下.在变量框中输入s.输入文本框是在运行时,用户可以在其中输入内容人.
下面新建两个按钮,一个标签为”确定”,一个标签为”重猜”.按钮的做法请参阅第二课.将两个按钮放到舞台上,最下面.打开属性面板,”确定”按钮命名为”qd_btn”,”重猜”按钮”命名为”cc_btn”.
新建一层,命名为”action”用来写代码.点中第一帧,点右键,打开动作面板,开始写代码:
首先声明一个变量,用来存放0-100间的随机数,所以第一行代码为:

var a = random(101);

然后声明一个变量,用来存放猜的次数,现在还没猜,所以给它赋值为0,第二行代码为:

var cs:Number = 0;

下面使用条件语句,来比较用户输入的数的产生的随机数:

qd_btn.onRelease = function(){ //
当点击确定按钮时,执行下面的语句.
    cs++; //猜的次数增加1
if (s>a){ //如果猜的数大于随机数.

c = "
大了点"; //动态文本框提示”大了点”.


} else if (s==a){ //
如果猜对了,根据猜的次数给出相应结果.


if(cs<=5){ //
如果猜的次数在5次以内


c = "
哇,你只猜了" + cs + "次就猜对了,真历害!"; //给出表扬,注意这里用到了,字符串的连接.


} else { //
如果不只猜5次.


c="
猜对了!你猜了"+cs+"次"; //提示猜对了,并给出猜的次数.


}


} else if (s
如果猜的数字小于随机数


c="
小了点";//提示”小了点”

}
}
最后,来写重猜的代码:

cc_btn.onRelease = function () { //
当点击重猜按钮时执行以下语句

a = random(101);//
重新产生随机数

cs = 0;//
将猜的次数设为0

s="";
清空输入文本框

c="";
清空提示文本
}
作业:制作猜数游戏
本课的练习作业及相关讨论请到这里:
http://bbs.jcwcn.com/viewthread.php?tid=200176&page=1&extra=page%3D1
AS入门教程第四课AS常用语句第二节-条件语句[原创][本文已收录教程库] - Flash... AS入门教程第四课AS常用语句第三节-循环语句[原创][本文已收录教程库] - Flash... AS入门教程第4课AS常用语句第一节-运算符[原创][本文已收录教程库] - Flash互... AS入门教程第二课-面向对象编程基础[原创][本文已收录教程库] - Flash互助课堂 ... AS入门教程第三课-AS基本语法[原创][本文已收录教程库] - Flash互助课堂 - ... AS入门教程第五课-数组原创][本文已收录教程库] - Flash互助课堂 - 中国教程网... AS入门教程第六课文本与字符第四节-字符串[原创][本文已收录教程库] - Flash互助... AS入门教程第六课文本与字符第二节-文本属性[原创][本文已收录教程库] - Flash互... AS入门教程第7课影片剪辑二节加载swf文件[原创][本文已收录教程库] - Flash互... AS入门教程第7课第3节控制时间轴[原创][本文已收录教程库] - Flash互助课堂 -... AS入门教程第7课影片剪辑第5节拖动与碰撞检测[原创][本文已收录教程库] - Flash... AS入门教程第六课文本与字符第一节-创建文本[原创][本文已收录教程库] - Flash互... AS入门教程第7课综合练习-拼图游戏的制作[原创][本文已收录教程库] - Flash互助... AS入门教程第7课影片剪辑第6节使用遮罩[本文已收录教程库] - Flash互助课堂 - ... AS入门教程第六课文本与字符第三节-事件与方法[原创][本文已收录教程库] - Flash... AS入门教程第7课影片剪辑-第9节使用滤镜[本文已收录教程库] - Flash互助课堂 -... AS入门教程第7课第12节-使用颜色[本文已收录教程库] - Flash互助课堂 - 中国... AS入门教程第7课影片剪辑第7节-AS实现过渡效果[本文已收录教程库] - Flash互助... AS入门教程第7课影片剪辑第10节-用AS绘图[本文已收录教程库] - Flash互助课堂... AS入门教程第九课使用声音第一节-Sound类[本文已收录教程库] - Flash互助课堂... AS入门教程第8课-日期与时间[本文已收录教程库](查至 36/3) - Flash互助课... AS常用语句 最常用的Flash AS语句(汇集)-电脑教程 新手来看:Flahs as入门教程-Flash教程