对调 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

相关文章
|
安全 Java 应用服务中间件
WebLogic Server 远程代码执行漏洞(CVE-2023-21839/CNVD-2023-04389)
WebLogic Server 存在远程代码执行漏洞,攻击者通过特定Payload对目标服务器进行恶意利用从而获取服务器控制权限,进一步操作。
754 1
|
存储 资源调度 安全
H3C CAS系列 一、CAS初认识
对于虚拟化,可能第一时间大家想到的是虚拟机,而对于虚拟机大家可能第一时间想到的就是我们大多数人都可能比较熟悉的VMware系列产品,比如常用VMware Workstation Pro 、VMware esxi。 而今天我带大家一起认识一款我们国产的虚拟化软件 H3C CAS。
2245 0
|
存储 传感器 JSON
Rockchip系列之VendorStorage 新增framework封装VendorStorageManager访问(4)
Rockchip系列之VendorStorage 新增framework封装VendorStorageManager访问(4)
370 0
|
9月前
|
移动开发 JavaScript 前端开发
HTML5最新经典俄罗斯方块游戏插件
HTML5最新经典俄罗斯方块游戏插件
|
前端开发 Java C++
RSocket vs WebSocket:Spring Boot 3.3 中的两大实时通信利器
本文介绍了在 Spring Boot 3.3 中使用 RSocket 和 WebSocket 实现实时通信的方法。RSocket 是一种高效的网络通信协议,支持多种通信模式,适用于微服务和流式数据传输。WebSocket 则是一种标准协议,支持全双工通信,适合实时数据更新场景。文章通过一个完整的示例,展示了如何配置项目、实现前后端交互和消息传递,并提供了详细的代码示例。通过这些技术,可以大幅提升系统的响应速度和处理效率。
|
存储 关系型数据库 MySQL
PHP与MySQL动态网站开发深度解析####
本文作为技术性文章,深入探讨了PHP与MySQL结合在动态网站开发中的应用实践,从环境搭建到具体案例实现,旨在为开发者提供一套详尽的实战指南。不同于常规摘要仅概述内容,本文将以“手把手”的教学方式,引导读者逐步构建一个功能完备的动态网站,涵盖前端用户界面设计、后端逻辑处理及数据库高效管理等关键环节,确保读者能够全面掌握PHP与MySQL在动态网站开发中的精髓。 ####
解锁 SQL Server 2022的时间序列数据功能
【7月更文挑战第14天】要解锁SQL Server 2022的时间序列数据功能,可使用`generate_series`函数生成整数序列,例如:`SELECT value FROM generate_series(1, 10)。此外,`date_bucket`函数能按指定间隔(如周)对日期时间值分组,这些工具结合窗口函数和其他时间日期函数,能高效处理和分析时间序列数据。更多信息请参考官方文档和技术资料。
377 9
|
SQL 监控 druid
Spring Boot 数据库操作Druid和HikariDataSource(一)
Spring Boot 数据库操作Druid和HikariDataSource
494 0
Spring Boot 数据库操作Druid和HikariDataSource(一)
|
存储 Linux Shell
udev用户空间设备管理
udev用户空间设备管理
352 0
|
设计模式 Java 编译器
Java底层知识:什么是 “桥接方法” ?
笔者在最近的日常工作中,因业务需要,研究 Java 字节码层面的知识。具体是,需要根据类字节码,获取特定方法名的方法入参,此方法名在源码中只有一个。但是在实际使用中发现:在类实现泛型接口的情况下,在字节码层面,类却有两个同名方法,导致无法确定哪个方法才是我们需要的方法。经过研究发现,其中一个方法是编译器在编译的过程中,自动生成的桥接方法(bridge method),两个方法可通过特定标识区分。
251 1
Java底层知识:什么是 “桥接方法” ?