用JAVA写“对两个整数变量的值进行互换(不需要第三方变量)”程序

如题所述

JAVA对两个整数变量的值进行互换(不需要第三方变量)的程序如下:

方法一(加减法):

a = a + b;

b = a - b;

a = a - b;

方法二(异或运算):

a = a ^ b;

b = a ^ b;

a = a ^ b;

代码实现如下:

public class Demo {
   public static void main(String [] args){
          int m=2,n=3;
          //method_1(m, n);
          method_2(m, n);     
   }
   /**
    * 使用异或^
    *明白一个数,如果异或同一个数两次,那么就等于本身
    */
private static void method_3(int m, int n) {
        m=m^n;
          n=m^n;
          m=m^n;
          System.out.println("m="+m+"\tn="+n);
}
   /**
    * 使用自身的数组,加减运算
    */
private static void method_2(int m, int n) {
        m=m+n;
           n=m-n;
           m=m-n;
           System.out.println("m="+m+"\tn="+n);
}
}

温馨提示:内容为网友见解,仅供参考
第1个回答  2012-09-14
可以实现的,通过异或运算^
如输入 A,B
A = A ^ B;
b = B ^ A;
A = A ^ B;
即可交换了本回答被网友采纳
第2个回答  2013-07-17
a = a + b; a = 8;
b = a - b; b = 3;
a = a - b; a = 5;
a = a ^ b;//
b = a ^ b;//b = a ^ b ^ b = a
a = a ^ b;//a = a ^ b ^ a = b;
相似回答