java中swap方法交换两个数的值的两种写法

java中swap方法交换两个数的值的两种写法,第1张

java中swap方法交换两个数的值的两种写法 第一种,常规 *** 作

实例代码如下

  //交换数组arr[i]与arr[j]的值
    public static void swap(int[] arr,int i,int j){
        int tmp=arr[i];
        arr[i]=arr[j];
        arr[j]=tmp;
    }
第二种,用异或方法实现
 //交换arr的i和j上位置的值
    public static void swap(int[] arr,int i,int j){
        arr[i] =arr[i] ^ arr[j];
        arr[j] =arr[i] ^ arr[j];
        arr[i] =arr[i] ^ arr[j];
    }

原理如下:用的是异或运算的性质0^N=N, N^N=0

新创建一个公众号 Rockey小何同学 想相互交流的同学可以关注一下哈! 感谢支持!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5707353.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存