Java基礎-邏輯運算符Logic Operators

              Java基礎-邏輯運算符Logic Operators
spa

                                做者:尹正傑code

版權聲明:原創做品,謝絕轉載!不然將追究法律責任。blog

 

 

 一.邏輯運算符io

  邏輯運算符是對布爾值進行操做運算的,常見的有:class

    1>.邏輯與(&);
基礎

    2>.邏輯或(|);im

    3>.邏輯異或(^);qq

    4>.邏輯非(!);總結

    5>.短路與(&&);static

    6>.短路或(||);

   總結規律以下:

    1>."&":只有兩個操做數都是true,結果纔是true,其他都是false;
    2>."|":只要有一個操做數是true,結果就是true,其他都是false;
    3>."!":取反,true變false,false變true;
    4>.單操做數的只有一個;
    5>.異或的含義:求異,只有兩個操做數不一樣,整個表達式才爲true;

 

二.案例展現

1>.邏輯運算符的操做數與布爾值

 1 /*
 2 @author :yinzhengjie  3 Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
 4 EMAIL:y1053419035@qq.com  5 */
 6 
 7 public class LogicDome{  8     public static void main(String[] args){  9         
10         //邏輯運算符的操做數與布爾值
11         System.out.println( true & true );                //true
12         System.out.println( false | true );            //true
13         System.out.println( true ^ false );            //true
14         System.out.println( true ^ true );                //false
15         System.out.println( !true );                    //false
16         System.out.println( !false );                    //true
17         
18  } 19 }

2>.短路與&&,操做結果與邏輯&同樣(推薦使用)

 1 /*
 2 @author :yinzhengjie  3 Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
 4 EMAIL:y1053419035@qq.com  5 */
 6 
 7 public class LogicDome2{  8     public static void main(String[] args){  9         
10         //短路與&&,操做結果與邏輯&同樣
11         int num = 2018; 12         System.out.println( (num < 0) & ( ++num > 0) );        //false
13         System.out.println( num );                                //2019 14         
15         //短路與&&,若是左側表達式爲false,不計算右側表達式的值了
16         num = 18; 17         System.out.println( (num < 0) && ( ++num > 0) );        //false
18         System.out.println( num );                                //18
19  } 20 }

3>.短路或||,若是左側爲true,不計算右側表達式的值了(推薦使用)

 1 /*
 2 @author :yinzhengjie  3 Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
 4 EMAIL:y1053419035@qq.com  5 */
 6 
 7 public class LogicDome3{  8     public static void main(String[] args){  9         
10         //短路與||,若是左側爲true,不計算右側表達式的值了
11         int num = 2018; 12         System.out.println( (num > 0) || ( ++num > 0) );        //false
13         System.out.println( num );                                //2018
14         
15  } 16 }

4>.邏輯運算符常常用於連接多個布爾表達式

 1 /*
 2 @author :yinzhengjie  3 Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
 4 EMAIL:y1053419035@qq.com  5 */
 6 
 7 public class LogicDome4{  8     public static void main(String[] args){  9         
10         //邏輯運算符常常用於連接多個布爾表達式
11         int year = 2018; 12 
13         /**
14  判斷某一年是否爲閏年: 15  能被4整除可是不能被100整除 || 直接能被400整除 16  (能被4整除 && 不能被100整除) || 直接能被400整除 17  (year%4==0 && year%100!=0) || year%400==0; 18         */
19         
20         boolean isPrime = (year%4==0 &&  year%100!=0)    ||    year%400==0;        //false
21     
22  System.out.println( isPrime); 23         
24  } 25 }
相關文章
相關標籤/搜索