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