iOS开发Swift-基本运算符

1.一元、二元、三元运算符

|----|--------|-----------|
| 一元 | 单一操作对象 | -a !b c! |
| 二元 | 两个操作对象 | 2 + 3 |
| 三元 | 三目运算符 | a ? b : c |

2.赋值运算符(=)

复制代码
let a = 10
var b = 5
b = a
let (x, y) = (1, 2)

赋值运算符不返回任何值,所以 if x = y { ... } 无效。

3.算术运算符

    • * /

默认不允许数值运算中溢出。

溢出运算符: a &+ b

4.求余运算符

a % b = 余数

a = (b * 倍数) + 余数

所以a % b = a % -b

5.组合赋值运算

复制代码
var a = 1
a += 2     //a = a + 2

6.比较运算符

== != > < >= <=

===恒等 !==不恒等 用于判断两个对象是否引用自同一对象实例

返回布尔值。

元组比较:两元组的元素类型与长度都相等的元组即可比较。从左向右比较,如果前面的元素比较成功则不会再往后比较。

复制代码
(1, "a") < (2, "b")
(3, "a") < (3, "b")
(4, "d") == (4, "d")

7.空合运算符(??)

复制代码
a ?? b //相当于 a != nil ? a! : b
//a为option类型,b与a的存储值类型一致。a非空时对a进行强制解析,a为空时返回b。
//短路求值:a非空时不会再计算b

8.闭区间运算符

复制代码
a ... b  //a到b间所有的值。a<=b
1 ... 5  //1, 2, 3, 4, 5

9.半开区间运算符

复制代码
a ..< b   //适用于数组遍历, 0  ..< 数组长度
1 ..< 5   //1, 2, 3, 4

10.单侧区间

往一侧延申的区间

复制代码
[ 2... ]
[ ...2 ]

11.半开单侧区间

复制代码
[ ..<2 ]

12.逻辑运算符

|----------|---|------------|----------------------|------------------|
| !a | 非 | 相反 | | |
| a && b | 与 | 全true为true | 短路计算(a为false时不会再计算b) | 左结合(没有括号时从左往右计算) |
| a || b | 或 | 一true为true | 短路计算(a为true时不会再计算b) | 左结合 |

相关推荐
geovindu5 分钟前
rust: Chain of Responsibility Pattern
开发语言·后端·设计模式·rust·责任链模式·行为模式
阿里嘎多学长8 分钟前
2026-10-14 GitHub 热点项目精选
开发语言·程序员·github·代码托管
迪康coolmu8 分钟前
迪康Defender网络准入控制系统落地实战:部署、配置与问题排查记录
运维·开发语言·网络·经验分享·php
兰亭妙微UI设计公司8 分钟前
兰亭妙微分享:高手设计登录页的12种切入点
开发语言·前端·javascript
木由里予10 分钟前
3D NAND 闪存的可靠性
开发语言·嵌入式硬件
acd1200911 分钟前
Go 里 err 被不经意覆盖的几个现场
开发语言·后端·golang
前端Baymax12 分钟前
静默的 86 小时:全链 402 停摆与零告警的故障复盘
开发语言·前端·javascript
开开心心就好18 分钟前
文件关联被破坏怎么修?免费工具一键修复
java·服务器·开发语言·pdf·ocr·启发式算法·宽度优先
不停喝水18 分钟前
【前端转全栈java速通课】 项目实战④12-14节 拦截器过滤器和全局配置-cors跨域设置-token体系-利用session做验证码
java·开发语言·前端·ai·容器
终端安全笔记21 分钟前
声明式之后,怎么证明更新策略真的生效了
ios·iphone