Java不借助第三方变量交换两个变量的值

Posted wjsffzb

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java不借助第三方变量交换两个变量的值相关的知识,希望对你有一定的参考价值。

这种方式有个隐患,如果两个数相加超过了类型的上限,会影响精度,导致结果不准确;

public class Test {

    public static void main(String[] args) {
        int i=1;
        int j=3;
        i=i+j;
        j=i-j;
        i=i-j;
        System.out.println(i+","+j);
    }
    
}

使用位^运算符就不会出现上面的情况

public class Test001 {

    public static void main(String[] args) {
        int i=1;
        int j=3;
        i=i^j;
        j=i^j;
        i=i^j;
        System.out.println(i+","+j);
    }
    
}

 

以上是关于Java不借助第三方变量交换两个变量的值的主要内容,如果未能解决你的问题,请参考以下文章

Java小案例——交换两个数值的三种方法

PHP不用第三变量交换2个变量的值的解决方法

交换两个变量的值,不借助第三个变量的 三种方法(JS实现)

不借助任何中间变量将两个整形变量的值交换

不利用临时变量,交换两个变量的值

JavaScript中交换两个变量的值得三种做法(代码实现)