交换变量的值的三种方法

一.使用中间变量

   即用一个临时变量来存储一个变量的值 , 然后交换两个变量的值

int a = 1;
int b = 2;
int temp = a; //1
a = b; //2
b = a; //1 

二.加减法交换

   即将两个变量的和值赋给其中一个变量 , 然后将这个变量的值减去另一个变量的值,  赋给另一个变量

int a = 1;
int b = 2;
a = a + b; //3
b = a - b; //1
a = a - b; //2

三.使用异或运算

   使用异或运算也可以实现变量交换,它的原理是利用异或运算的性质:任何数与自身异或的结果为0,任何数与0异或的结果为自身。

int a = 1;
int b = 2;
a = a ^ b; // a = 3 ^ 2 = 1
b = a ^ b; // b = 1 ^ 2 = 3
a = a ^ b; // a = 1 ^ 3 = 2

你可能感兴趣的:(数据结构,java)