條件式計算式

大家熟悉的加減乘除,即使進入了程式碼的世界,上過數學課仍能輕鬆理解其義,然而,對於條件判斷運算式,大家可能比較陌生一些,例如要比較兩個整數是否相等的條件式運算式,說不定目前的你會寫作while (a=b) ...而對於電腦的報錯感到莫名其妙,我們在此章介紹一些常用的運算:

  • ==:左右兩端相等回傳true,否則回傳false
  • !=:左右兩端不相等回傳true,否則回傳false
  • >, >=:和我們所認為的大於、大於等於相同意思。
  • <, <=:和我們所認為的小於、小於等於相同意思。

目前我們學會的IntFloatDoubleString四種資料型態都可以使用這些運算來比較,在比較String時會由左到右逐個比較字元,如果完全相等,那麼>=<===指令會回傳true!=會回傳false。若是比較大小,在第一個不相等的字元出現時,就會依照比較結果回傳truefalse。而Bool型態是無法進行這些比較運算的。

// String 比較的玩耍,大家可以自行實驗
print("C" > "c")
print("🐶" < "🐧")

有時候我們在進行迴圈時需要比較複雜的條件運算,像上一小節做出來的購買功能,現在要新增一個檢查玩家物品欄是否已滿的功能,再物品欄未滿的情況下,才能不斷的進行購買,否則就讓購買中斷。

while coins >= price && (玩家物品欄有空間) {
    // 進行購買和扣錢的動作,並更新物品欄資訊
}

這個&&稱為邏輯運算子,和我們所認為的「而且」意思相同,我們介紹三種最常用的邏輯運算子如下:

  • (Bool) && (Bool):即是「而且」,左右兩邊的Bool都為true時,結果為true,否則為false
  • (Bool) || (Bool):即是「或者」,左右兩邊的Bool只要有一個為true,結果就為true,否則為false
  • !(Bool):傳回和括號內的Bool相反的結果。例如!(true)就會計算出false

results matching ""

    No results matching ""