java版——实现两个数值交换的四种方式

实现两个数值交换,最常用的莫过于中间变量法,那是不是还有别的方式呢。请看下文:

class Operator
{
	// 实现两个数值交换的多种方式
	public static void main(String[] args){
	  // 方式1 中间变量法
	  int a = 10;
	  int b = 20;
	  int c = a;
	      a = b;
		  b = c;
	  System.out.println(a);//20
	  System.out.println(b);//10
      // 方式2 异或运算
	  int d = 10;
	  int e = 20;
	  d = d^e;
	  e = d^e;  
	  d = d^e;  
      System.out.println(d);//20
	  System.out.println(e);//10
	  // 方式3 加减法运算
	  int f = 10;
	  int g = 20;
	  f = f+g;
	  g = f-g;
	  f = f-g;
	  System.out.println(f);//20
	  System.out.println(g);//10
	  // 方式4 一句话搞定
	  int h = 10;
	  int i = 20;
	  i = (h+i)-(h=i);//(10+20)-20;
	}
}
简单的数值交换都可以有多种方法,所以在以后编程的日子里要时刻提醒自己,成功的方法不止有一个,一个想法走不通的时候,要换个思路继续前行。

你可能感兴趣的:(java)