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

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

  在只須要判斷一個條件的時候,天然是使用if語句方便有效;可是當判斷條件不少的時候,咱們可使用多個if語句或者if...else if語句或者switch case語句。it

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

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

將會對每個判斷條件進行判斷,天然而然會致使程序的執行效率下降。在多個判斷條件的狀況下,使用if...else if語句相對於使用多個if語句而言,能夠減小程序遍歷

的判斷次數,提升效率。程序

  在多個判斷條件的狀況下,不只可使用if...else if語句,還可使用switch case語句。通常狀況下,當判斷條件較多的狀況下,使用switch case語句的cas

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

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

因此從效率上來講因爲if...else if的遍歷性,代碼執行效率是不高的。

相關文章
相關標籤/搜索