基础算法java实现两个数交换
Posted 醉酒的小男人
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了基础算法java实现两个数交换相关的知识,希望对你有一定的参考价值。
package thread;
public class SwapTest {
public static void main(String[] args) {
swapNumber1();
swapNumber2();
swapNumber3();
swapNumber4();
}
/**
* 临时变量
*/
public static void swapNumber1(){
int a = 10;
int b = 20;
System.out.println("交换前1,a="+a+",b="+b);
int tmp = a;
a = 20;
b= tmp;
System.out.println("交换后1,a="+a+",b="+b);
}
/**
* 两数相加保存和值
*/
public static void swapNumber2(){
int a = 10;
int b = 20;
System.out.println("交换前2,a="+a+",b="+b);
a = a + b;
b = a - b;
a = a - b;
System.out.println("交换后2,a="+a+",b="+b);
}
/**
* 两数异或实现(一个数据对另一个数据异或两次,该数本身不变)
*/
public static void swapNumber3(){
int a = 10;
int b = 20;
System.out.println("交换前3,a="+a+",b="+b);
a = a ^ b;
b = a ^ b; // a ^ b^ b = a
a = a ^ b; // a ^ a ^ b = b
System.out.println("交换后3,a="+a+",b="+b);
}
/**
* 运算符优先级
*/
public static void swapNumber4(){
int a = 10;
int b = 20;
System.out.println("交换前4,a="+a+",b="+b);
b = (a+b) - (a = b);
System.out.println("交换后4,a="+a+",b="+b);
}
}
以上是关于基础算法java实现两个数交换的主要内容,如果未能解决你的问题,请参考以下文章