2つの整数変数間の交換を実現する4つの方法

2つの整数変数間の交換を実現する4つの方法

方法1(サードパーティの変数を使用(開発で使用))

class Test {
    
    
    public static void main(String[] args) {
    
    
        int a = 10;
        int b = 20;

        System.out.println("a:"+a+",b:"+b);

        //方式1:使用第三方变量(开发中用的)
      
        int c = a;
        a = b;
        b = c;
        System.out.println("a:"+a+",b:"+b);
    }
}

方法2(排他的論理和(面接用))

class Test {
    
    
    public static void main(String[] args) {
    
    
        int a = 10;
        int b = 20;

        System.out.println("a:"+a+",b:"+b);

        //方式2:用位异或实现(面试用)
        //左边:a,b,a
        //右边:a ^ b
      
        a = a ^ b;
        b = a ^ b; //a ^ b ^ b = a
        a = a ^ b; //a ^ b ^ a = b
        System.out.println("a:"+a+",b:"+b);
    }
}

方法3(変数を追加する方法を使用)

class Test {
    
    
    public static void main(String[] args) {
    
    
        int a = 10;
        int b = 20;

        System.out.println("a:"+a+",b:"+b);

        //方式3:用变量相加的做法
      
        a = a + b; //a=30
        b = a - b; //b=10
        a = a - b; //a=20
        System.out.println("a:"+a+",b:"+b);
    }
}

方法4

class Test {
    
    
    public static void main(String[] args) {
    
    
        int a = 10;
        int b = 20;

        System.out.println("a:"+a+",b:"+b);

        //方式4:一句话搞定
        b = (a+b) - (a=b); //b=30-20=10,a=20
        System.out.println("a:"+a+",b:"+b);
    }
}

おすすめ

転載: blog.csdn.net/wqs12345612/article/details/109005584