首页 > 学院 > 开发设计 > 正文

代码实现两个数交换方法

2019-11-11 05:13:50
字体:
来源:转载
供稿:网友

方法1

提供一个临时变量

public class swapInt { public static void main(String[] agrs){ int m = 12; int n = 5; System.out.PRintln("m:"+m+" n:"+n); int temp = m; m = n; n = temp; System.out.println("m:"+m+" n:"+n);}

方法2

缺点:当m和n较大时,有可能会出现精度损失

public class swapInt { public static void main(String[] agrs){ int m = 12; int n = 5; System.out.println("m:"+m+" n:"+n); m = m + n; //m=12+5 n = m - n; //n=17-5 m = m - n; //m=17-12 System.out.println("m:"+m+" n:"+n);}

方法3

优点:没有以上两种方法的缺点

public class swapInt { public static void main(String[] agrs){ int m = 12; int n = 5; System.out.println("m:"+m+" n:"+n); m = m ^ n; n = m ^ n;//(m^n)^n == m,相当于m值给n m = m ^ n;//(m^n)^m == n,相当于n值给m System.out.println("m:"+m+" n:"+n);}

如图解释: 位运算实现两数交换


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表