java 实现两个变量的互换(不借助第三个变量,即中间变量、临时变量)
2017-10-15 15:47
330 查看
变量的互换常用在数组排序算法中,当判断两个数组元素交互时,需要借助第三个变量来实现,即需要创建一个临时变量来共同完成互换,但是临时变量的创建增加了系统资源的消耗,如果需要交换的是两个整数类型的变量,那么可以使用更高效的方法:
创建一个类,在该类的主方法中创建扫描器来接受两个变量值,那么可以位运算符中异或运算符来实现两个变量的交换。
import java.util.Scanner;
public class VariableExchange {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner scanner = new Scanner(System.in);
System.out.println("请输入变量a的值");
long a = scanner.nextLong();
System.out.println("请输入变量b的值");
long b = scanner.nextLong();
System.out.println("a = " + a +"\tb = " + b);
System.out.println("执行变量互换!!");
a = a^b;
b = b^a;
a = a^b;
System.out.println("a = " + a + "\tb = " + b);
}
}
创建一个类,在该类的主方法中创建扫描器来接受两个变量值,那么可以位运算符中异或运算符来实现两个变量的交换。
import java.util.Scanner;
public class VariableExchange {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner scanner = new Scanner(System.in);
System.out.println("请输入变量a的值");
long a = scanner.nextLong();
System.out.println("请输入变量b的值");
long b = scanner.nextLong();
System.out.println("a = " + a +"\tb = " + b);
System.out.println("执行变量互换!!");
a = a^b;
b = b^a;
a = a^b;
System.out.println("a = " + a + "\tb = " + b);
}
}
相关文章推荐
- Java基础知识强化05:不借助第三个变量实现两个变量互换
- Java基础应用之运算符(实现两个变量的互换(借助第3个变量))
- Java两个变量的互换(不借助第3个变量)具体实现方法
- Java实现两个变量值互换-----不借助第3个变量
- Java实现两个变量的互换(不借助第3个变量)
- Java两个变量的互换(不借助第3个变量)具体实现方法
- Java基础应用之运算符(实现两个变量的互换(不借助第3个变量))
- 不借助第三个变量实现两个变量的互换
- 实现两个变量的互换(不借助第三个变量)
- 实现两个数字的互换,不需要借助第三个变量
- 实现两个变量的互换(不借助第三个变量)
- [Java] 不使用第三个变量实现两个整数类型变量互换(异或运算符)
- 300.7实现两个变量的互换,不借助第三个变量
- 不借助第三个变量,实现两个整数互换值
- JAVA不借助第三个变量实现两个变量交换的思考
- 不借助第三个变量实现两个变量之间的值传递和交换
- 不借助第三个参数实现两个变量的值互相交换
- 有两个int型变量a,b,在不使用第三个变量的情况下实现a,b互换
- 不借助第三个变量实现两个变量交换的思考
- Java不借助中间变量,交换两个变量的值的方法