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) | 左结合 |

相关推荐
万联WANFLOW6 分钟前
多分支企业组网,IP 网段到底该怎么规划
开发语言·php
阿里嘎多学长17 分钟前
2026-07-07 GitHub 热点项目精选
开发语言·程序员·github·代码托管
cookies_s_s2 小时前
C++ 字符串动态创建对象 -- 工厂模式、自动注册、模板递归动态调用
服务器·开发语言·c++
盐焗鹌鹑蛋3 小时前
【C++】继承
开发语言·c++
栈溢出了3 小时前
Java Lambda 表达式笔记
java·开发语言·intellij-idea
zhixingheyi_tian4 小时前
一份GC日志的解读
java·开发语言
czhaii4 小时前
串口1中断收发-C语言-MODBUS协议
c语言·开发语言
apihz4 小时前
随机驾考题目(C 照科一 / 科四 2000+ 题)免费API调用教程
android·java·c语言·开发语言·网络协议·tcp/ip
matlab代码5 小时前
基于matlab人脸疲劳驾驶检测系统(可使用其它人脸视频)【源码39期】
开发语言·matlab·人脸疲劳检测
zenithdev15 小时前
fastcache:为 Go 设计的低 GC 压力内存缓存
开发语言·其他·缓存·golang