java 两个变量交换内容的三种方法

java 两个变量交换内容的三种方法

  • 有a = 10; b= 20;将这两个变量值交换
  1. 利用第三个变量c进行交换
public class SwapTest
{
  public static void main(String[] args){
  	int a = 10;
  	int b = 20;
  	System.out.println("a:" + a + "\tb:"+b);
  	//定义一个变量c,通过变量c进行交换,用c存储a的值先
  	int c = a;
  	//再将b存储的值赋值给a
  	a = b;
  	//再将c中存储的值赋值给b
  	b = c;
  	System.out.println("a:" + a + "\tb:"+b);
  }
}

结果
在这里插入图片描述

  1. 不用第三方变量
  • 利用a+b,再进行加减a,b
public class SwapTest
{
	public static void main(String[] args){
		int a = 10;
		int b = 20;
		System.out.println("a:" + a + "\tb:"+b);
		//利用a将a+b的值存储起来,a-->a+b
		a = a+b;
		//然后b --> b;  a -b 相当于 (a+b) - b --> a,值再赋值给b,b --> a
		b = a - b;
		//a - b 相当于  (a+b) - a --> b,再赋值给a,a --> b
		a = a-b;
		System.out.println("a:" + a + "\tb:"+b);
	}
}

结果
在这里插入图片描述

  • 利用a ^ b ^ b还是原来的值
public class SwapTest
{
	public static void main(String[] args){
		int a = 10;
		int b = 20;
		System.out.println("a:" + a + "\tb:"+b);
		//利用a将a+b的值存储起来,a-->a^b
		a = a^b;
		//然后b --> b;  a ^b 相当于 (a^b)^b --> a,值再赋值给b,b --> a
		b = a ^ b;
		//a - b 相当于  (a+b) - a --> b,再赋值给a,a --> b
		a = a^b;
		System.out.println("a:" + a + "\tb:"+b);
	}
}

结果
在这里插入图片描述

总结

  • 有第三方变量交换的方式,字符串,数值都行
  • 没有第三方变量的,a+b的方式,可能会造成相加后,超出原本变量类型的存储方法,而且是对于数值有效
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值