三种方法交换俩个变量值(位运算,中间变量,加减运算)

  1. package Array;  
  2. //2017102209:42:30  
  3. public class SwapTest  
  4. {  
  5.     
  6.     static void print(int a,int b)  
  7.     {  
  8.         System.out.println("a = "+a);  
  9.         System.out.println("b = "+b);  
  10.     }  
  11.     public static  void swap1(int a,int b)  
  12.     {  
  13.         //使用位运算中的异或,俩次异或不改变原值  
  14.         a = a^b;  
  15.         b = a^b;  
  16.         a = a^b;  
  17.             
  18.         print(a, b);  
  19.             
  20.     }  
  21.     public static void swap2(int a,int b)  
  22.     {  
  23.         a = a+b;  
  24.         b = a-b;  
  25.         a = a - b;  
  26.             
  27.         print(a, b);  
  28.     }  
  29.     public static void swap3(int a,int b)  
  30.     {  
  31.         int temp = a;  
  32.         a = b;  
  33.         b = temp;  
  34.             
  35.         print(a, b);  
  36.     }  
  37.     public static void main(String[] args)  
  38.     {  
  39.         int a =1,b =2;  
  40.             
  41.         swap3(a, b);  
  42.             
  43.     }  
  44.     
  45. }  
发布了33 篇原创文章 · 获赞 37 · 访问量 11万+

猜你喜欢

转载自blog.csdn.net/hagle_wang/article/details/78347338