Unity C# | While & Do-While

更新 發佈閱讀 3 分鐘

一、前言

  這篇文章將會講述 While 迴圈與 Do-While 迴圈。

二、 While

  這是一個比較簡易使用的迴圈,但是也比較有危險,使用的時候要特別注意迴圈是否有明確的架構,不會無限運作導致系統當機。

1. 架構

int ValueA = 0;
while(ValueA < 10)
{
   //Do something
}

  撰寫 While 迴圈,需要一個判斷式,與一個 break 用於跳出迴圈。

2. 判斷式

  ValueA < 10 是這個 While 迴圈的判斷式,只要符合這個條件,就會執行迴圈內的動作,在 While 迴圈中,只要符合迴圈的條件,就可以無限制地繼續執行下去,也因此判斷式會是整個迴圈的重點。

3. 注意事項與風險

  如果沒有設計好迴圈的判斷式,那程式就會陷入無限迴圈,這對於程式撰寫來說是很危險的狀態,如果沒有撰寫良好的判斷式,會導致迴圈停不下來,持續的執行直到電腦崩潰。

  尤其是新手容易放在 Update 中使用,導致每一幀都新增一個額外的迴圈,導致一秒出現60多個 While 迴圈,如果這些迴圈不會停止,那遊戲開始沒一秒不到系統就會過熱,直接當機,很快就崩潰了。

三、Do-While

  有些時候,我們並不希望一開始就檢測是否符合判斷式,而是希望程式可以先執行一遍,再去判斷是否有達成條件,Do-While 就是為了解決這樣的問題而存在,先執行一遍程式,再去判斷是否達成條件。

1. 架構

do
{
  //Do Something.
} while (ValueA < 10);

  撰寫 Do-While 迴圈,需要先撰寫一個 Do 關鍵字、程式碼區塊,並且在程式碼區塊的後方添加上 While 迴圈,並且直接上分號;作為結尾。

2. 判斷式

  ValueA > 10 就是此 While 迴圈的判斷式,跟 Whlie 迴圈完全一樣,不過 這個判斷式會在 Do 關鍵字執行以後才會運作,如果不符合條件會跳出迴圈;如果符合條件則會重覆 Do 裡面的事情,但無論怎麼說都會先執行一次 Do 裡面的事情。

3. 注意事項與風險

  Do-While 迴圈跟 While 的風險完全一樣。

四、額外的跳出迴圈-break

if(ValueA > 10)
{
break;
}

  我們可以使用一些方式提前跳出迴圈,除了好好撰寫判斷式之外,就是使用 break 關鍵字來跳出迴圈,這可以防治 While 迴圈的弊端,提前用 if 判斷式去判斷執行了幾次,有沒有超出既定的設計。

  但無論判斷式與 break 寫得多麼的精細與精湛,如果把它包裝在 Update 裡面,那程式無論如何都會崩潰。

四、後記

  最近我已經習慣早上起來撰寫文章,這可以大幅降低我請假休息的可能性,對於文章更新有非常好的幫助。

留言
avatar-img
留言分享你的想法!
avatar-img
瓶裝雪的沙龍
114會員
247內容數
你好,我是瓶裝雪!我是一名遊戲設計師!
瓶裝雪的沙龍的其他內容
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
小蝸和小豬因購物習慣不同常起衝突,直到發現蝦皮分潤計畫,讓小豬的購物愛好產生價值,也讓小蝸開始欣賞另一半的興趣。想增加收入或改善伴侶間的購物觀念差異?讓蝦皮分潤計畫成為你們的神隊友吧!
Thumbnail
小蝸和小豬因購物習慣不同常起衝突,直到發現蝦皮分潤計畫,讓小豬的購物愛好產生價值,也讓小蝸開始欣賞另一半的興趣。想增加收入或改善伴侶間的購物觀念差異?讓蝦皮分潤計畫成為你們的神隊友吧!
Thumbnail
這篇內容,將會講解什麼是「for迴圈」,以及與「for迴圈」相關的知識。包括for迴圈的簡介、for迴圈、break、continue。
Thumbnail
這篇內容,將會講解什麼是「for迴圈」,以及與「for迴圈」相關的知識。包括for迴圈的簡介、for迴圈、break、continue。
Thumbnail
在 Kotlin 程式語言中,while 迴圈是用來重複執行區塊內程式碼,只要滿足特定條件就會持續運行,一旦條件不滿足,迴圈就會停止執行。這種特性讓你能夠以更靈活的方式處理程式邏輯,並在滿足特定情況時停止迴圈的執行。
Thumbnail
在 Kotlin 程式語言中,while 迴圈是用來重複執行區塊內程式碼,只要滿足特定條件就會持續運行,一旦條件不滿足,迴圈就會停止執行。這種特性讓你能夠以更靈活的方式處理程式邏輯,並在滿足特定情況時停止迴圈的執行。
Thumbnail
我們探討了while迴圈的使用,不同於for迴圈,while迴圈以條件式判斷為基礎,而非限定重複次數。我們介紹了使用break語句強制結束迴圈,以及使用continue語句跳過特定程式碼並返回迴圈開頭,同時,我們提及了無窮迴圈的概念,強調了在迴圈中必須更改迴圈變數的值,以避免無窮迴圈的發生。
Thumbnail
我們探討了while迴圈的使用,不同於for迴圈,while迴圈以條件式判斷為基礎,而非限定重複次數。我們介紹了使用break語句強制結束迴圈,以及使用continue語句跳過特定程式碼並返回迴圈開頭,同時,我們提及了無窮迴圈的概念,強調了在迴圈中必須更改迴圈變數的值,以避免無窮迴圈的發生。
Thumbnail
在這篇Python學習筆記中,我們研究了條件判斷和迴圈,透過if、else、elif條件語句,我們能根據條件執行程式碼。使用for迴圈和while迴圈,我們可以重複執行程式碼塊。同時,我們還介紹了break和continue等控制流程的使用方法。這些概念將幫助你寫出更靈活和有趣的程式!
Thumbnail
在這篇Python學習筆記中,我們研究了條件判斷和迴圈,透過if、else、elif條件語句,我們能根據條件執行程式碼。使用for迴圈和while迴圈,我們可以重複執行程式碼塊。同時,我們還介紹了break和continue等控制流程的使用方法。這些概念將幫助你寫出更靈活和有趣的程式!
Thumbnail
什麼是迴圈?就是不停地、不斷地在做同樣的事,所以才稱「重複性迴圈」,因為一直再輪迴,那麼像上一篇的例子,不到60分就要一直補考是要怎麼用呢?重複性迴圈主要有for迴圈、while迴圈、do...while迴圈,有何不一樣?接下來就來介紹一下它們? 一、for迴圈 這一個會運用到初始值、繼續執行的條件
Thumbnail
什麼是迴圈?就是不停地、不斷地在做同樣的事,所以才稱「重複性迴圈」,因為一直再輪迴,那麼像上一篇的例子,不到60分就要一直補考是要怎麼用呢?重複性迴圈主要有for迴圈、while迴圈、do...while迴圈,有何不一樣?接下來就來介紹一下它們? 一、for迴圈 這一個會運用到初始值、繼續執行的條件
Thumbnail
C# 迴圈(C# 教學) – for loop 可以說是程序編寫的基本功. 運用LOOPING可以減少程式碼, 只需透過for內的BLOCK, 就可把程式碼重用, 避免要不停把程序碼重覆. 以下我會介紹迴圈的結構, 運行方式, 如何離開迴圈, 以及迴圈的種類. 2) 迴圈的種類 3) 迴圈的用法
Thumbnail
C# 迴圈(C# 教學) – for loop 可以說是程序編寫的基本功. 運用LOOPING可以減少程式碼, 只需透過for內的BLOCK, 就可把程式碼重用, 避免要不停把程序碼重覆. 以下我會介紹迴圈的結構, 運行方式, 如何離開迴圈, 以及迴圈的種類. 2) 迴圈的種類 3) 迴圈的用法
Thumbnail
前言   這篇文章將會介紹 for 陳述式和 foreach 陳述式,以及比較兩者的差別,並撰寫範例介紹用途。 迴圈使用條件   當我們需要重複執行程式碼達特定次數,或需要控制.NET執行階段去執行反覆項目的方式時,會使用到迴圈,在遊戲產程式中,迴圈更是不可少的重要程式碼區塊。 for 關鍵字
Thumbnail
前言   這篇文章將會介紹 for 陳述式和 foreach 陳述式,以及比較兩者的差別,並撰寫範例介紹用途。 迴圈使用條件   當我們需要重複執行程式碼達特定次數,或需要控制.NET執行階段去執行反覆項目的方式時,會使用到迴圈,在遊戲產程式中,迴圈更是不可少的重要程式碼區塊。 for 關鍵字
Thumbnail
另一種迴圈的形式是while迴圈,和for迴圈常常可以達到相同的功能,差別在於for迴圈是在一定的範圍內迭代,例如從1到100,或是串列裡的每一個元素;而while迴圈是一個條件判斷的迴圈,當滿足這個條件就執行迴圈的內容,不滿足時就跳出迴圈。
Thumbnail
另一種迴圈的形式是while迴圈,和for迴圈常常可以達到相同的功能,差別在於for迴圈是在一定的範圍內迭代,例如從1到100,或是串列裡的每一個元素;而while迴圈是一個條件判斷的迴圈,當滿足這個條件就執行迴圈的內容,不滿足時就跳出迴圈。
Thumbnail
break、continue、更進一步的for迴圈、while迴圈、switch
Thumbnail
break、continue、更進一步的for迴圈、while迴圈、switch
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News