Java交换变量-Java板块造梦空间论坛-技术交流-造梦空间论坛

Java交换变量

int num1 = 10;
int num2 = 20;

 

已知num1=10,num2=20,让他们的值转换。

简单,实用,方法一

采用一个临时变量先储存其中一个值。

int temp = num1;
		num1 = num2;
		num2 = num1;
		System.out.println("num1="+num1+"num2="+num2);

方法二

num1 = num1 + num2;
		num2 = num1 - num2;
		num1 = num1 - num2;
		System.out.println("nun1="+num1+"num2="+num2);

优点:不需要新建一个变量,节省内测

弊端:①相加操作肯超出储存范围②有局限性(数值类型)

方法三

num1 = num1 ^ num2;
		num2 = num1 ^ num2;
		num1 = num1 ^ num2;
		System.out.println("num1="+num1+"num2="+num2);

转为二进制,相同二进制进行^运算,1^1=0,0^0=0

不同二进制运算1^0=1,0^1=1

弊端:有局限性(数值类型)

请登录后发表评论

    • 小波的头像-造梦空间论坛造梦超级会员小波徽章-人气大使-造梦空间论坛等级-LV5-造梦空间论坛作者超级版主0
© 造梦空间论坛