編程的三大基石:賦值、判斷、循環(huán)
編程的三大基石是賦值、判斷和循環(huán)。在之前的教程中,我們已經(jīng)學(xué)習(xí)了賦值的操作。本節(jié)課我們將一起學(xué)習(xí)判斷的相關(guān)內(nèi)容。一、何謂判斷在生活中,我們經(jīng)常會(huì)遇到需要做出判斷的情況。比如在購(gòu)物時(shí),假設(shè)你購(gòu)買的貨物總
編程的三大基石是賦值、判斷和循環(huán)。在之前的教程中,我們已經(jīng)學(xué)習(xí)了賦值的操作。本節(jié)課我們將一起學(xué)習(xí)判斷的相關(guān)內(nèi)容。
一、何謂判斷
在生活中,我們經(jīng)常會(huì)遇到需要做出判斷的情況。比如在購(gòu)物時(shí),假設(shè)你購(gòu)買的貨物總價(jià)值為130元人民幣,用現(xiàn)金支付時(shí),你首先找有沒有100元的鈔票,如果有就拿出一張100元的,如果沒有,則找有沒有50元的鈔票,然后再找有沒有20元的,最后再找有沒有10元的。還有一種可能是,你可能需要零錢,所以當(dāng)你有了100元之后,還要給收銀員第二個(gè)100元鈔票以換取零錢。另外,如果你手里有很多零錢但沒有100元的,那么你會(huì)先找50元的,然后再找20元的,最后找10元的甚至5元的。以上列舉了一些場(chǎng)景,并給出了不同的處理方式,每種情況都需要有一個(gè)標(biāo)準(zhǔn),這個(gè)標(biāo)準(zhǔn)就是判斷的靈魂,滿足標(biāo)準(zhǔn)的操作就會(huì)執(zhí)行,而不滿足標(biāo)準(zhǔn)的操作則會(huì)有不同的處理方式。
二、AS3內(nèi)如何實(shí)現(xiàn)判斷
在AS3中,我們通過使用if關(guān)鍵字來實(shí)現(xiàn)判斷。其代碼模式如下:
```
if(A){
B
}
```
其中,A是一個(gè)條件表達(dá)式,也就是我們需要進(jìn)行判斷的標(biāo)準(zhǔn)。如果滿足該條件,就會(huì)執(zhí)行B語(yǔ)句;如果不滿足該條件,則不會(huì)執(zhí)行B語(yǔ)句。
舉個(gè)例子:
```
var num:uint 50;
if(num < 100){
trace("num的值小于100");
}
```
由于num的初始值為50,所以條件表達(dá)式`num < 100`返回值為true(真),滿足判斷的標(biāo)準(zhǔn),因此會(huì)執(zhí)行trace語(yǔ)句,將雙引號(hào)內(nèi)的內(nèi)容發(fā)送到輸出面板。如果不滿足條件(條件表達(dá)式的返回值為false(假)),則不會(huì)執(zhí)行trace語(yǔ)句。
三、判斷的一般形式
上述的判斷是最簡(jiǎn)略的形式,不太常用。在實(shí)際應(yīng)用中,最常見的判斷形式是使用if和else配合使用。代碼模式如下:
```
if(A){
B
} else {
C
}
```
if表示“如果”,else表示“否則”。根據(jù)A的返回值,如果為true,則只執(zhí)行B語(yǔ)句;如果為false,則只執(zhí)行C語(yǔ)句。
舉個(gè)例子:
```
var num:uint 150;
if(num < 100){
trace("num的值小于100");
} else {
trace("num的值不小于100");
}
```
由于num的值為150,所以`num < 100`是錯(cuò)誤的,也就是說,條件表達(dá)式的返回值為false,因此只執(zhí)行第二個(gè)trace語(yǔ)句,輸出"num的值不小于100"。
四、稍微復(fù)雜一點(diǎn)的判斷
在代碼中,為什么我們要將條件設(shè)置為"不小于100"而不是"大于100"呢?因?yàn)閚um的值有可能等于100。所以為了讓代碼更精確,我們需要將等于100的情況也包含在內(nèi)。那么下面這種寫法是否可以解決呢?
```
if(A){
B
} else {
C
} else {
D
}
```
答案是否定的。測(cè)試時(shí)會(huì)報(bào)錯(cuò)【1083:語(yǔ)法錯(cuò)誤:不需要else。】因?yàn)槌薆和C之外,還出現(xiàn)了一個(gè)D!正確的寫法如下:
```
if(A){
B
} else if(C){
D
} else {
E
}
```
這種寫法相當(dāng)于將兩個(gè)if...else語(yǔ)句連接在一起,只是第一個(gè)else后面沒有語(yǔ)句,而是立即跟上了第二個(gè)if...else語(yǔ)句。
所以上述完整的代碼如下:
```
var num:uint 150;
if(num < 100){
trace("num的值小于100");
} else if(num 100){
//注意:是而不是
trace("num的值等于100");
} else {
trace("num的值大于100");
}
```
以上是關(guān)于AS3中判斷的一些基本內(nèi)容,希望能夠?qū)δ兴鶐椭?。在?shí)際應(yīng)用中,判斷是非常重要的,可以根據(jù)不同的條件執(zhí)行不同的操作,從而實(shí)現(xiàn)更加靈活和智能的程序邏輯。