Scala中交换两个变量的值的3中实现方法

需求

已知有两个Int类型的变量a和b, 初始化值分别为10和20, 请写代码实现变量a和变量b的值的交换.

即最终结果为: a=20, b=10.

注意: 不允许直接写a=20, b=10这种代码.

*方式一: 通过算术运算符实现.

//定义两个Int类型的变量a和b, 初始化值分别为10和20
var a = 10
var b = 20
//将变量a和b的计算结果赋值给变量a
a = a + b	//a = 30, b = 20
//计算并赋值
b = a - b	//a = 30, b = 10
a = a - b	//a = 20, b = 10
//打印结果
println("a: " + a)		//a: 20
println("b: " + b)		//b: 10

方式二: 通过定义临时变量实现

//定义两个Int类型的变量a和b, 初始化值分别为10和20
var a = 10
var b = 20
//定义临时变量temp, 记录变量a的值
var temp = a			//a = 10, b = 20, temp = 10
//把变量b的值赋值给a
a = b					//a = 20, b = 20, temp = 10
//把临时变量temp的值赋值给b
b = temp				//a = 20, b = 10, temp = 10
//打印结果
println("a: " + a)		//a: 20
println("b: " + b)		//b: 10

方式三: 通过位运算符实现**

//定义两个Int类型的变量a和b, 初始化值分别为10和20
var a = 10
var b = 20
//定义临时变量temp, 记录变量a和b的位异或值(这个值不需要我们计算)
var temp = a ^ b	//即: temp = 10 ^ 20
//通过位异或进行交换变量值	
a = a ^ temp		//运算流程: a = a ^ temp = a ^ a ^ b = 10 ^ 10 ^ 20 = 20
b = b ^ temp		//运算流程: b = b ^ temp = b ^ a ^ b = 20 ^ 10 ^ 20 = 10
//打印结果
println("a: " + a)	//a: 20
println("b: " + b)	//b: 10
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值