java 编写函数 交换两个基本变量的值

Java编写一个函数交换两个变量的值

Java函数在传递过程中只能够传值,不能传址。这样,函数的参数在函数内部做任何变化就都不会反映到外部调用者来。所以解决之道就是要找到要交换对象的引用。对于普通的值类型,像int或者double这样的可以改传他们的包装类Integer和Double。而对于本来就是引用类型的对象,则需要对他们再包一层。一个好的方法就是将参数列表改成数组,例如void
 
swap(Object[]);  //数字应当只包含两个元素
 
下面以整数为例介绍三种交换两个值的算法,假设有这样的声明:
 
void swap(Integer a, Integer b)
 
方法一:采用临时变量
int temp = a.value;
a.value = b.value;
b.value = temp;
 
方法二:使用异或
a.value ^= b.value;
b.value ^= a.value;
a.value ^= b.value;
 
方法三:使用求和和求差
a.value = a.value + b.value;
b.value = a.value - b.value;
a.value = a.value - b.value;

你可能感兴趣的:(java 编写函数 交换两个基本变量的值)