黑马程序员技术交流社区

标题: 对两个整数变量的值进行互换 [打印本页]

作者: 18942668193    时间: 2015-1-26 19:47
标题: 对两个整数变量的值进行互换
有三种方法:
class    demo1
{
     pubilc     static  void main(String【】  args)
     int  n=3; m=8;
    {
       System.out.println("a="+a+",b="+b);
  //第一种方法:通过定义第三方变量.一般情况下通过第三方变量
   int   temp;
   temp=n;
    n=m;
   m=temp;
System.out.println("a="+a+",b="+b);//输出结果a=8,b=3
//第二种方法,通过求和的方式
   n=n+m;//如果n和m的值非常大,容易超出int范围,一般不建议这样做
   m=n-m;
   n=n-m;
System.out.println("a="+a+",b="+b);//输出结果a=8,b=3
//第三种方法,采用异或的方式。
n=n^m;
m=n^m;//(n^m)^m
n=n^m;//n^(n^m)
System.out.println("a="+a+",b="+b);//输出结果a=8,b=3
   }
}
作者: 18942668193    时间: 2015-1-26 19:49
第三种方法属于技巧方法。
作者: 18942668193    时间: 2015-1-26 20:22
异或运算
全为真,则为假,
全为假,则为假,
一真一假,则为真。
作者: huyang936    时间: 2015-1-26 21:21
总结的很好啊




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2