java面试题11 牛客:如下语句通过算术运算和逻辑运算之后i和 j的结果是
如下語句通過算術運算和邏輯運算之后i和 j的結果是( )?
| 1 2 3 4 5 6 | int i=0; int j=0; if((++i>0)||(++j>0)) { //打印出i和j的值。 } |
懵逼樹下懵逼果,懵逼樹前你和我
邏輯運算符(Java中)有四類:
?&&(短路與),&
??? ||(短路或),?? |
?
短路與是JAVA語言中的一個邏輯運算符,記作&&,與編程語言中的與邏輯相似,但具有短路性質。
符號為:&&。
A&&B, 當A為false時,不去計算B的值而直接返回false;當A為true時,計算B的值。(來自百度百科)
而A&B,需要計算A和B的值才會返回值。
簡單的來說:
&&和&都是表示與,區別是&&若第一個條件不滿足,后面條件就不再判斷。而&要對所有的條件都進行判斷。
例1
public class Demo{public static void main(String[] args) {int i = 4;if ((i++ > 6) & (i++ < 9)) {System.out.println(i);System.out.println("if為真");}System.out.println(i);} }運行結果為 : 6
因為 i 自加兩次。
例2:
public class Demo{public static void main(String[] args) {int i = 4;if ((i++ > 6) && (i++ < 9)) {System.out.println(i);System.out.println("if為真");}System.out.println(i);} }?
運行結果為 : 5
因為 i 自加一次。
同理,| 和 || 也是類似情況。
百度百科:
短路或是JAVA語言中的一個邏輯運算符,記作||。所謂短路,即在第一項為true的情況下,不再進行第二項的判斷。
a||b:只有a與b都為false,結果才為false;有一個為true,結果為true。
簡單的來說:
|| 和 | 都是表示與,區別是 || 若第一個條件不滿足,后面條件就不再判斷。而 | 要對所有的條件都進行判斷。
所以答案為D
文章僅個人理解,來在各大網站。如有不合理之處,歡迎吐槽。
閱讀目錄(置頂)(長期更新計算機領域知識)https://blog.csdn.net/weixin_43392489/article/details/102380691
閱讀目錄(置頂)(長期更新計算機領域知識)https://blog.csdn.net/weixin_43392489/article/details/102380882
閱讀目錄(置頂)(長期科技領域知識)https://blog.csdn.net/weixin_43392489/article/details/102600114
歌謠帶你看java面試題 https://blog.csdn.net/weixin_43392489/article/details/102675944
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的java面试题11 牛客:如下语句通过算术运算和逻辑运算之后i和 j的结果是的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python 中的__getattr__
- 下一篇: springboot session超时