if語句,if...else if語句和switch...case語句的區別和分析


if語句,if else if語句和switch case語句都屬於流程控制語句。

  在只需要判斷一個條件的時候,自然是使用if語句方便有效;但是當判斷條件很多的時候,我們可以使用多個if語句或者if...else if語句或者switch case語句。

對於這三者的選擇,下面將做一些具體分析;對於后兩者的選擇,又將涉及到程序執行效率的問題。

  if...else if語句和多個if語句的區別還是很大的,if...else if在任何一個環節滿足條件的時候就將會終止判斷,只處理一個滿足條件的情況;而對於多個if語句,

將會對每一個判斷條件進行判斷,自然而然會導致程序的執行效率降低。在多個判斷條件的情況下,使用if...else if語句相對於使用多個if語句而言,可以減少程序

的判斷次數,提高效率。

  在多個判斷條件的情況下,不僅可以使用if...else if語句,還可以使用switch case語句。一般情況下,當判斷條件較多的情況下,使用switch case語句的

效率會高於使用if...else if語句。switch...case與if...else if的根本區別在於,switch...case會生成一個跳轉表來指示實際的case分支的地址,而這個跳 轉表的

索引號與switch變量的值是相等的。從而,switch...case不用像if...else if那樣遍歷條件分支直到命中條件,而只需訪問對應 索引號的表項從而到達定位分支的目的。

所以從效率上來說由於if...else if的遍歷性,代碼執行效率是不高的。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM