多個if判斷和if else if判斷的區別

2021-09-23 05:47:54 字數 764 閱讀 3154

拿二維矩陣來舉個例子

public class solution

if(target > array[rows][cols])

if(target < array[rows][cols])

}return false;}}

這是使用多個if進行判斷的情況;

public class solution

else if(target > array[rows][cols])

else

}return false;}}

這是使用if-else if - else的方法;

唔,補充一句,該二維矩陣從左到右遞增,從上到下遞增。

當輸入乙個比矩陣中右下角的元素還要大的整數時,使用方法一也就是多個if進行判斷的時候會丟擲資料越界的異常,因為方法一將一次迴圈進行多次判斷,當判斷到最後一行的最大元素也就是右下角的元素也比輸入的整數小的時候,第二個if迴圈還是會將他加1,一般的思維來說,到這一步沒有問題,當rows行數超出了矩陣的範圍的時候終止迴圈返回false,但是方法一當完成了第二個if的判斷將rows加1後還會進行第三個if的判斷,而此時,是在第二個if的基礎上進行的判斷,入參的rows在介紹第二個if的判斷的時候已經超出了矩陣的長度,此時再將其作為判斷條件,自然就會丟擲陣列越界的異常,

而使用方法二則不會如此,方法二將一次迴圈作為乙個整體只判斷一次,當執行完else if 語句 將行數加1後不會再繼續向下執行,而是返回迴圈的開始,判斷是否符合繼續迴圈的條件,此時自然是不符合的,直接跳出迴圈返回false,該整數不存在。

if else if語句和多個並列的if語句的區別

對於if else if語句和多個並列的if語句的區別,我就拿例項來給大家看看吧。例題 輸入三個數a,b,c,按要求由小到大的順序輸出?解析 我們假設a,b,c,已經是由小到大的順序排列的,我們需要將這三個數每2個比較一下大小關係。如果a b 則將a和b的位置互換 如果a c 則將a和c的位置互換 ...

if if 和if else if的區別是什麼?

if 條件1 if 條件2 這種格式中,程式會依次判斷條件1和條件2是否成立並根據結果決定是否執行語句1和語句2,也就是說,第乙個 if 塊和第二個 if 塊 沒有影響 除非在執行第乙個 if 塊的時候就 地 return 了 而下面這種格式 if 條件1 else if 條件2 if 塊和 els...

多個v if判斷渲染

今天碰見後端反介面,將a,b,c三種type一同反給前端,需前端判斷字段是否有值,有值則顯示字段,無值則不顯示字段。一共三十多個字段,可能會寫到 就採用了這種方法 data中 rightshowlist filters industrialresourcesid serviceevaluationi...