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

相关推荐
十五年专注C++开发26 分钟前
Oat++: 一个轻量级、高性能、零依赖的 C++ Web 框架
开发语言·c++·web服务·oatpp
陈天伟教授27 分钟前
心电心音同步分析-案例:原型设计一
开发语言·人工智能·python·语言模型·架构
Allen_LVyingbo30 分钟前
量子计算Dirac Notation基本教学—从零基础到读懂量子信息论文(下)
开发语言·人工智能·python·数学建模·量子计算
wjs202437 分钟前
Ruby File 类和方法
开发语言
UXbot40 分钟前
2026年AI全链路产品开发工具对比:5款从创意到上线一站式平台深度解析
前端·ui·kotlin·软件构建·swift·原型模式
xyq202441 分钟前
API 类别 - UI 核心
开发语言
Digitally41 分钟前
如何将 iPad 上的照片传输到 U 盘(4 种解决方案)
ios·ipad
Dxy12393102161 小时前
Python路径算法简介
开发语言·python·算法
文慧的科技江湖1 小时前
光储充协同的终极闭环:用SpringCloud微服务打造“发-储-充-用“智能能源网络 - 慧知开源充电桩管理平台
java·开发语言·spring cloud·微服务·能源·充电桩开源平台·慧知重卡开源充电桩平台
東雪木1 小时前
Java学习——内部类(成员内部类、静态内部类、局部内部类、匿名内部类)的用法与底层实现
java·开发语言·学习·java面试