寫if語句裡有兩種表示式的最優寫法

2021-09-02 02:10:41 字數 484 閱讀 9667

1.表示式a, 表示式b ,有2*2=4種組合:a&&b、 a&&!b、 !a&&b、 !a&&!b

if(a)else

}else if(b)

else

先執行a表示式,不滿足才繼續往下走

2.常用的場景寫法

if(!a&&!b)else if(a&&b)else if(a)else
3.表示式寫的先後順序是有差異的,系統預設從左向右執行

比如a=null,if(!a&&a.equals(""))不會報錯,執行if(false),而if(a.equals("")&&!a)就會報空指標的錯誤,導致崩潰

4.if...else if...else...if...if...的區別

前者只會執行一次,後者如果多個if語句都滿足,就會執行多次

Python lambda表示式的兩種應用場景

1.lambda表示式 python書寫簡單,功能強大,迅速發展成為 ai 深度學習的主要語言。介紹python中的lambda表示式,注意到,它只是乙個表示式,不是語句啊。lambda的語法規則 乙個或多個引數以冒號終止輸入引數,這些引數可以理解為有名函式原型的輸入引數,以後是乙個表示式,相當於有...

正規表示式中的 兩種意義

正規表示式中的 有兩種意義,乙個是標識開頭,乙個是內容取反 一 作為標識開頭 1.a 會匹配 a bc 中的a,但是不會匹配 er a 中的a,此時 a的意思是 匹配以a作為開頭的 2.對應的 代表結尾 3.類似的有 s s g cat cat cat cat 二 作為內容取反 x 匹配除了x以外的...

常規表示式轉化為字尾表示式的兩種方法

用棧對表示式求值就要想到字首表示式和字尾表示式了,字尾表示式方便一些。棧由於先進後出和後進先出的原則,所以字尾表示式求值的演算法思路簡單是 讀取字尾表示式,遇到運算元就進棧,遇到操作符的時候,先從棧中連續取出兩個運算元,計算出值然後結果進棧。那麼問題來了,怎麼將常規表示式轉化成字尾表示式?以a b ...