Untiy C# | if 判斷式及可讀性維護

更新於 發佈於 閱讀時間約 3 分鐘

一、前言

  這篇文章將會講述 if 判斷式的簡寫與可讀性維護。

二、if 判斷式

  這是一個學習程式語言的必經之路,也是許多條件與判斷的核心邏輯。

1. 整體架構

  if(true)

{

//Do Something.

}

  if 判斷式式相對比較容易理解的邏輯判斷,也是邏輯判斷的基礎,他的架構並不複雜,總共有四行,第一行是判斷式本身,第二與第四行是程式碼區塊、第三行可以擴增,並且執行核心運算。

  它的第二種排版為下:

  if(true){

//Do Something.

}

  這也是很多程式員在爭執的程式排版方式。

2. 判斷部分

  「if(true)」的部分,裡面就是一個布林值,只要為 ture 就可以執行之後程式碼區塊的內容,布林值的類型有許多種函式都能辦到,譬如:

a: A==B

b: Component.CompareTag("Obj")

c: Physics.Raycast(...)

d: bool

  以上內容都可以放置在 if 判斷式裡面。

3. else

  正常來說,如果判斷式為 true 才會觸發某段程式碼,而有些時候我們會希望沒有 true 的時候,也就是判斷式為 false 會觸發另一段程式碼。

  if(true){

//Do Something.

} else

{

//Do Something.

}

三、bool 的簡潔寫法

  那問題來了,他們看起來非常的複雜,也就是說程式碼行數太多了,我們有一些方式可減少程式碼的長度。

1. 單行陳述式

  如果程式碼只需要執行一個函式或改變一個變數,那就可以用一個比較簡潔的寫法,如下所示:

  if(true) Do Something;

2. 是否判斷

  如果判斷式最後會輸出一個布林值為 true 或 false 的話,有一個較為簡單的寫法可以使用,如下所示:

bool isHit;

isHit = if(Physics.Raycast(...));

3. 三元運算子 (Ternary Operator)

  如果是判斷是否,並且分別對同一個變數賦予兩個不同的值,那就可以考慮三元運算子,不過要注意的是,三元運算子的可讀性比較差,因此要把命名規則寫好,也可以選擇註解或把程式碼封裝好。

int result;

bool condition;

result = (condition) ? value1 : value2;

4. 例外-null 值判斷

  在 Unity 程式撰寫中,雖然有上述的幾種簡寫方式,但是在 null 值得維持可讀性上面,卻是比較長的程式碼會比較好讀。

if ( A != null)

{

  //Do Something.

}

  上述的程式馬反而會比有縮減的程式碼來得好讀:

if ( A != null)

 //Do Something.

四、後記

  這篇文章原本是想用來講述雷射是一種布林值,不過後面發現都在講述 if 判斷式本身,所以這篇文章就被獨立出來了。

留言
avatar-img
留言分享你的想法!
avatar-img
瓶裝雪的沙龍
108會員
247內容數
對設計師如何成長為設計師好奇嗎? 2020年九月,我進入大學學習當一位設計師,從開始到沉寂,再到重燃熱忱,我將在方格子紀錄我的成長歷程、理念、心情,分享我在這段旅程中所經歷的故事。
瓶裝雪的沙龍的其他內容
2024/09/22
魔火術師是第三人稱動作射擊遊戲,屬於專題畢業製作,在畢業組成新的團隊後優化並上架。
Thumbnail
2024/09/22
魔火術師是第三人稱動作射擊遊戲,屬於專題畢業製作,在畢業組成新的團隊後優化並上架。
Thumbnail
2024/01/26
這篇文章將會講述虛擬(virtual)與覆蓋(override)的簡易使用方式。
Thumbnail
2024/01/26
這篇文章將會講述虛擬(virtual)與覆蓋(override)的簡易使用方式。
Thumbnail
2023/12/29
講述遊戲設計從新手到專業的發展方向。
Thumbnail
2023/12/29
講述遊戲設計從新手到專業的發展方向。
Thumbnail
看更多
你可能也想看
Thumbnail
「欸!這是在哪裡買的?求連結 🥺」 誰叫你太有品味,一發就讓大家跟著剁手手? 讓你回購再回購的生活好物,是時候該介紹出場了吧! 「開箱你的美好生活」現正召喚各路好物的開箱使者 🤩
Thumbnail
「欸!這是在哪裡買的?求連結 🥺」 誰叫你太有品味,一發就讓大家跟著剁手手? 讓你回購再回購的生活好物,是時候該介紹出場了吧! 「開箱你的美好生活」現正召喚各路好物的開箱使者 🤩
Thumbnail
在程式語言裡,對應到多重選擇路徑判斷的語法, 最通俗也最常見的就是if ... else ... 語法。 今天,我們將從最基本的 若A條件成立 則...否則 ... 的 if ... else ...開始講起, 搭配幾個範例做說明,最後以一個經典的閏年判定最為結尾的Demo
Thumbnail
在程式語言裡,對應到多重選擇路徑判斷的語法, 最通俗也最常見的就是if ... else ... 語法。 今天,我們將從最基本的 若A條件成立 則...否則 ... 的 if ... else ...開始講起, 搭配幾個範例做說明,最後以一個經典的閏年判定最為結尾的Demo
Thumbnail
在 Kotlin 中,if 條件控制,讓你能夠根據條件的成立與否來執行不同的程式碼塊。它可以被單獨使用,也可以與 else 搭配使用,為程式添加更多的邏輯控制。
Thumbnail
在 Kotlin 中,if 條件控制,讓你能夠根據條件的成立與否來執行不同的程式碼塊。它可以被單獨使用,也可以與 else 搭配使用,為程式添加更多的邏輯控制。
Thumbnail
接下來來看 AND、OR、NOT 是怎麼被實際運用的!
Thumbnail
接下來來看 AND、OR、NOT 是怎麼被實際運用的!
Thumbnail
介紹邏輯運算的觀念,包含布林值、運算子與運算式的介紹。並說明如何使用 Python 撰寫這些觀念。
Thumbnail
介紹邏輯運算的觀念,包含布林值、運算子與運算式的介紹。並說明如何使用 Python 撰寫這些觀念。
Thumbnail
這篇文章將會講述 if 判斷式的簡寫與可讀性維護。
Thumbnail
這篇文章將會講述 if 判斷式的簡寫與可讀性維護。
Thumbnail
這篇文章將會講述一個 Physics.Raycast 命中判斷的簡易寫法。
Thumbnail
這篇文章將會講述一個 Physics.Raycast 命中判斷的簡易寫法。
Thumbnail
前言 這是紀錄本人學習Unity C#時的筆記,希望讓自己能夠整理思緒,方便記憶。 因為是新手自學的關係,也很有可能有誤解或錯誤的地方,請見諒… 變數 宣告變數不能使用數字開頭,或是除了_之外的符號。 ·整數 int ·浮點數 float、double float 精度低、佔的資源較少,double
Thumbnail
前言 這是紀錄本人學習Unity C#時的筆記,希望讓自己能夠整理思緒,方便記憶。 因為是新手自學的關係,也很有可能有誤解或錯誤的地方,請見諒… 變數 宣告變數不能使用數字開頭,或是除了_之外的符號。 ·整數 int ·浮點數 float、double float 精度低、佔的資源較少,double
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News