不定义新变量,交换两个变量的值

1 加减法: // 方法一:该方法可以交换整型和浮点型数值的变量,但在处理浮点型的时候有可能出现精度的损失

   int a=1;
   int b=2;

            a = a + b;
   b = a - b;
   a = a - b;

   System.out.printf("a = %d ,b =%d ",a,b);

2乘除法: //方法二:可以完成对整型变量的交换,对于浮点型变量它无法完成交换。

       int a=1;
    int b=2;
    a = a * b;
    b = a / b;
    a = a / b;

    System.out.printf("a = %d ,b =%d ",a,b);

3异或;//可以处理整型和浮点型变量,但在处理浮点型变量时也存在精度损失问题。而且乘除法比加减法要多一条约束:b必不为0。
   int a = 1;
   int b = 2;
   a = a^b;
   b = a^b;
   a = a^b;
  System.out.printf("a = %d ,b =%d ",a,b);
    
————————————————
版权声明:本文为CSDN博主「qq_21777351」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_21777351/article/details/79490890

原文地址:https://www.cnblogs.com/ryelqy/p/14472701.html