Java 邏輯運(yùn)算符中&&與&,||與|的區(qū)別
在Java的邏輯運(yùn)算符中,有這么四類:&&(短路與),&,|,||(短路或)。
&&和&都是表示與,區(qū)別是&&只要第一個條件不滿足,后面條件就不再判斷。而&要對所有的條件都進(jìn)行判斷。
看下面的程序:
public static void main(String[] args) {
// TODO Auto-generated method stub
if((23!=23)&&(100/0==0)){
System.out.println("運(yùn)算沒有問題。");
}else{
<span style="white-space:pre"> </span>System.out.println("沒有報錯");
}
}
輸出的是“沒有報錯”。而將&&改為&就會如下錯誤:
Exception in thread "main" java.lang.ArithmeticException: / by zero
原因是:&&時判斷第一個條件為false,后面的100/0==0這個條件就沒有進(jìn)行判斷。
&時要對所有的條件進(jìn)行判斷,所以會對后面的條件進(jìn)行判斷,所以會報錯。
||和|都是表示“或”,區(qū)別是||只要滿足第一個條件,后面的條件就不再判斷,而|要對所有的條件進(jìn)行判斷。
看下面的程序:
public static void main(String[] args) {
// TODO Auto-generated method stub
if((23==23)||(100/0==0)){
System.out.println("運(yùn)算沒有問題。");
}else{
System.out.println("沒有報錯");
}
}
此時輸出“運(yùn)算沒有問題”。若將||改為|則會報錯。
原因是:||判斷第一個條件為true,后面的條件就沒有進(jìn)行判斷就執(zhí)行了括號中的代碼,而|要對所有的條件進(jìn)行判斷,
所以會報錯。
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關(guān)文章
java中struts2實現(xiàn)簡單的文件上傳與下載
這篇文章主要為大家詳細(xì)介紹了java中struts2實現(xiàn)簡單的文件上傳與下載的相關(guān)資料,感興趣的小伙伴們可以參考一下2016-05-05
淺談為什么阿里巴巴要禁用Executors創(chuàng)建線程池
這篇文章主要介紹了淺談為什么阿里巴巴要禁用Executors創(chuàng)建線程池,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02
Spring中配置ContextLoaderListener方式
這篇文章主要介紹了Spring中配置ContextLoaderListener方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2025-04-04
Spring boot route Controller接收參數(shù)常用方法解析
這篇文章主要介紹了Spring boot route Controller接收參數(shù)常用方法解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-10-10
springboot動態(tài)注入配置與docker設(shè)置環(huán)境變量的方法
這篇文章主要介紹了springboot動態(tài)注入配置與docker設(shè)置環(huán)境變量的方法,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-04-04

