返回列表 發帖

位元運算子 (一)

Java 的邏輯運算子又分為短路型的條件運算子及非短路型的位元運算子。對於短路型的 || ,只要第一個條件為 true,結果就是 true;而對於短路型的 && ,只要第一個條件為 false,結果就是 false,兩者皆不會再對第二個條件做運算。
  1. public class Ch01 {

  2.         public static void main(String[] args) {
  3.                 int a=0;
  4.             int b=0;
  5.                 if((a++)<2 || (b++)<2)    //條件運算子,短路型,只要第一個條件為true,結果就是true
  6.                         System.out.println("true");
  7.                 else
  8.                         System.out.println("false");
  9.                 System.out.println("a="+a+" b="+b);
  10.                
  11.                 a=0;
  12.                 b=0;
  13.                 if((a+=2)<2 && (b+=2)<2)    //條件運算子,只要第一個條件為false,結果就是false
  14.                         System.out.println("true");
  15.                 else
  16.                         System.out.println("false");
  17.                 System.out.println("a="+a+" b="+b);
  18.                
  19.                 a=0;
  20.                 b=0;
  21.                 if((a++)<2 | (b++)<2)     //位元運算子,非短路型,兩個條件都會完整跑完
  22.                         System.out.println("true");
  23.                 else
  24.                         System.out.println("false");
  25.                 System.out.println("a="+a+" b="+b);
  26.                
  27.                 a=0;
  28.                 b=0;
  29.                 if((a+=2)<2 & (b+=2)<2)   //位元運算子,非短路型,兩個條件都會完整跑完
  30.                         System.out.println("true");
  31.                 else
  32.                         System.out.println("false");
  33.                 System.out.println("a="+a+" b="+b);
  34.         }

  35. }
複製代碼

  1. public class P2 {

  2.         public static void main(String[] args) {
  3.                 int a=0;
  4.             int b=0;
  5.                 if((a++)<2 || (b++)<2)  
  6.                         System.out.println("true");
  7.                 else
  8.                         System.out.println("false");
  9.                 System.out.println("a="+a+" b="+b);
  10.                 a=0;
  11.                 b=0;
  12.                 if((a+=2)<2 && (b+=2)<2)  
  13.                         System.out.println("true");
  14.                 else
  15.                         System.out.println("false");
  16.                 System.out.println("a="+a+" b="+b);
  17.                 a=0;
  18.                 b=0;
  19.                 if((a++)<2 | (b++)<2)   
  20.                         System.out.println("true");
  21.                 else
  22.                         System.out.println("false");
  23.                 System.out.println("a="+a+" b="+b);
  24.                 a=0;
  25.                 b=0;
  26.                 if((a+=2)<2 & (b+=2)<2)   
  27.                         System.out.println("true");
  28.                 else
  29.                         System.out.println("false");
  30.                 System.out.println("a="+a+" b="+b);
  31.         }
  32. }
複製代碼

TOP

  1. public class Ch01 {

  2.         public static void main(String[] args) {
  3.                 int a=0;
  4.             int b=0;
  5.                 if((a++)<2 || (b++)<2)    //條件運算子,短路型,只要第一個條件為true,結果就是true
  6.                         System.out.println("true");
  7.                 else
  8.                         System.out.println("false");
  9.                 System.out.println("a="+a+" b="+b);
  10.                
  11.                 a=0;
  12.                 b=0;
  13.                 if((a+=2)<2 && (b+=2)<2)    //條件運算子,只要第一個條件為false,結果就是false
  14.                         System.out.println("true");
  15.                 else
  16.                         System.out.println("false");
  17.                 System.out.println("a="+a+" b="+b);
  18.                
  19.                 a=0;
  20.                 b=0;
  21.                 if((a++)<2 | (b++)<2)     //位元運算子,非短路型,兩個條件都會完整跑完
  22.                         System.out.println("true");
  23.                 else
  24.                         System.out.println("false");
  25.                 System.out.println("a="+a+" b="+b);
  26.                
  27.                 a=0;
  28.                 b=0;
  29.                 if((a+=2)<2 & (b+=2)<2)   //位元運算子,非短路型,兩個條件都會完整跑完
  30.                         System.out.println("true");
  31.                 else
  32.                         System.out.println("false");
  33.                 System.out.println("a="+a+" b="+b);
  34.         }

  35. }
複製代碼

TOP

  1. public class A {
  2.         public static void main(String[] args) {
  3.                 int a=0;
  4.             int b=0;
  5.                 if((a++)<2 || (b++)<2)
  6.                         System.out.println("true");
  7.                 else
  8.                         System.out.println("false");
  9.                 System.out.println("a="+a+" b="+b);
  10.                
  11.                 a=0;
  12.                 b=0;
  13.                 if((a+=2)<2 && (b+=2)<2)
  14.                         System.out.println("true");
  15.                 else
  16.                         System.out.println("false");
  17.                 System.out.println("a="+a+" b="+b);
  18.                
  19.                 a=0;
  20.                 b=0;
  21.                 if((a++)<2 | (b++)<2)  
  22.                         System.out.println("true");
  23.                 else
  24.                         System.out.println("false");
  25.                 System.out.println("a="+a+" b="+b);
  26.                
  27.                 a=0;
  28.                 b=0;
  29.                 if((a+=2)<2 & (b+=2)<2)  
  30.                         System.out.println("true");
  31.                 else
  32.                         System.out.println("false");
  33.                 System.out.println("a="+a+" b="+b);
  34.         }
  35. }
複製代碼

TOP

  1. public class CH01 {

  2.         public static void main(String[] args) {
  3.                    int a=0;
  4.            int b=0;
  5.                if((a++)<2 || (b++)<2)   
  6.                        System.out.println("true");
  7.                else
  8.                        System.out.println("false");
  9.                System.out.println("a="+a+" b="+b);            
  10.                a=0;
  11.                b=0;
  12.                if((a+=2)<2 && (b+=2)<2)   
  13.                        System.out.println("true");
  14.                else
  15.                        System.out.println("false");
  16.                System.out.println("a="+a+" b="+b);            
  17.                a=0;
  18.                b=0;
  19.                if((a++)<2 | (b++)<2)     
  20.                        System.out.println("true");
  21.                else
  22.                        System.out.println("false");
  23.                System.out.println("a="+a+" b="+b);              
  24.                a=0;
  25.                b=0;
  26.                if((a+=2)<2 & (b+=2)<2)   
  27.                        System.out.println("true");
  28.                else
  29.                        System.out.println("false");
  30.                System.out.println("a="+a+" b="+b);
  31.         }

  32. }
複製代碼
我是眾神之王XXX  I love you
0000000000

TOP

  1. public class Ch01 {
  2.        
  3.         int a=0, b=0;
  4.         Ch01()
  5.         {
  6.                 if((a++)<2 || (b++)<2)
  7.                         System.out.println("true");
  8.                 else
  9.                         System.out.println("false");
  10.                 System.out.println("a="+a+" b="+b);
  11.                
  12.                 a=0;
  13.                 b=0;
  14.                 if((a+=2)<2 && (b+=2)<2)
  15.                         System.out.println("true");
  16.                 else
  17.                         System.out.println("false");
  18.                 System.out.println("a="+a+" b="+b);
  19.                
  20.                 a=0;
  21.                 b=0;
  22.                 if((a++)<2 | (b++)<2)
  23.                         System.out.println("true");
  24.                 else
  25.                         System.out.println("false");
  26.                 System.out.println("a="+a+" b="+b);
  27.                
  28.                 a=0;
  29.                 b=0;
  30.                 if((a+=2)<2 & (b+=2)<2)
  31.                         System.out.println("true");
  32.                 else
  33.                         System.out.println("false");
  34.                 System.out.println("a="+a+" b="+b);
  35.         }
  36.        
  37.         public static void main(String[] args) throws Exception {
  38.         new Ch01();
  39.         }
  40. }
複製代碼

TOP

返回列表