对调 2个变量的值若干种方式

简介: 对调 2个变量的值若干种方式
方式1 临时变量法

let a = 3
let b = 5
let temp = a;
a = b;
b = temp

方式2 倒水加减法

let a = 3
let b = 5
a = a + b // 3 + 5 此时a , 为原a + b ,我们称和 总和
b = a - b // 8 - 5 求差,获得原a的值也就3, 赋值给b
a = a - b // 8 - 3 此时 b 已经是原a的值, 总-b 求差,可以获得 原b的值

方式3 数组解构法

let a = 3
let b = 5
let arr = [a,b]
[b,a] = [a,b]

方式4 数组下标法

let a = 3
let b = 5
let arr = [a,b]
b = arr[0]
a = arr[1]

方式 5 对象键值法

var obj = {a:b,b:a}
a = obj.b
b = obj.a

方式 6 数组运算法 ,里面先运算 -----这个有点妙🐱

let a =3
let b = 5
a = [b,b=a][0]

方式 7 按位异或法

let a =3
let b = 5

a = a^b
b= b^a
a = a^b

相关文章
|
7月前
【变态面试题】【两种解法】不能创建临时变量(第三个变量),实现两个数的交换
【变态面试题】【两种解法】不能创建临时变量(第三个变量),实现两个数的交换
53 0
【变态面试题】【两种解法】不能创建临时变量(第三个变量),实现两个数的交换
|
4月前
|
存储
两个变量数值的交换
两个变量数值的交换
|
5月前
交换两个变量的值
交换两个变量的值
|
7月前
|
存储 C语言
学习总结(位操作符;循环输入的三种方式;交换两个变量值的三种方法;打印数字对应的二进制;unsigned int 与int 的区别;改变特定位数0/1;&&和||的连续操作(与前置,后置结合))
学习总结(位操作符;循环输入的三种方式;交换两个变量值的三种方法;打印数字对应的二进制;unsigned int 与int 的区别;改变特定位数0/1;&&和||的连续操作(与前置,后置结合))
76 0
题目:编写函数fun其功能是:根据整型形参m,计算如下公式的值:y=12!+14!+…+1m!(m是偶数)
题目:编写函数fun其功能是:根据整型形参m,计算如下公式的值:y=12!+14!+…+1m!(m是偶数)
271 0
|
算法
【经典算法问题 二】交换两个变量值,不使用第三个变量
【经典算法问题 二】交换两个变量值,不使用第三个变量
72 0
|
自然语言处理 C语言 C++
输入两个整数,求它们按由从大到小的顺序输出。要求使用变量的引用。
输入两个整数,求它们按由从大到小的顺序输出。要求使用变量的引用。
|
数据安全/隐私保护 C语言
【C语言】交换两个int变量的值,不能使用第三个变量
交换两个int变量的值,不能使用第三个变量。即a=3,b=5,交换之后 a=5,b=3

热门文章

最新文章