Swift Lession 02
基本操作
Swift
像c语言一样,提供了大多数标准的运算符和改进了一些常发生错误的编码。
术语
运算符分为三种,一元,二元,三元操作。
- 一元运算符操作一个单独的目标(例如: -a)
一元操作符可以添加前缀(例如: !a)
一元操作符可以添加后缀(例如:a!)- 二元操作符可以操作两个目标(例如: 2 + 3)
- 三元操作符可以操作三个目标,和c语言一样,swift 只有一个三元操作符
例如:(a > b? a: b)
赋值操作符
在程序语言中,都通过
=
来进行赋值操作,区别于数学上的 =
|
|
算数操作符
Swift 支持4种操作运算符针对所有的数字类型。
- 加法: +
- 减法: -
- 乘法: *
- 除法: /
|
|
小提示
加法操作也支持对字符串的操作哦。
1 "hello " + "world" //equal hello world
取余操作符
求余数的操作符。
%
12 7 % 3 // equal 13 % 1 // equal 0
浮点数也可以进行取余运算
一元操作符
一元有负号和正号操作。
1234567 // 负号操作let three = 3let minusThree = -three // equals -3let plusThree = -minusThree // equals 3// 正号操作let minusSix = 6let alsoMinusSix = +minusSix // equals -6
复合赋值操作符
赋值操作符是
=
复合操作符如下所示
- 加法:+=
- 减法:-=
- 乘法:*=
- 除法:/=
- 取余:%=
小提示
这个复合赋值操作符,是不会有一个返回值的.
12 let b = a += 2// 这种用法是不被允许的
比较操作符
Swift 支持所有的 c 的标准比较符。
- 等于:==
- 不等于:!=
- 大于:>
- 小于:<
- 大于等于: >=
- 小于等于: <=
小提示
Swift 也提供两种额外的操作符,针对于对象的引用判断。
- === 判断对象是引用同一个对象
- !== 判断对象不是引用同一个对象
|
|
Swift 可以对 元组进行比较
三元条件操作符
三元条件操作符
? :
是对简单 if else 的简便语句。
123456789 let a = 3, b = 2var max = 0if a > b {max = a} else {max = b}// 使用三元条件操作符max = (a > b? a: b) // max 的值是 3
nil 合并运算符
nil 合并运算符
??
|
|
Range 操作符
Swift 包含了两种 range 操作符
闭合式 Range 操作符
这个闭合式 Range 操作符的定义方式 (a…b)
a的值不准大于b, 可以理解为数学上的,闭区间[a, b]
闭合式 Range 经常用于for-in
循环
|
|
半开式 Range 操作符
这种闭合式 Range 操作符的敌营方式 (a..<b)
a 的值小于 b,可以理解为数学中的,半闭半开区间 [a, b)
|
|
逻辑运算符
逻辑运算符是修改和组合 布尔类型的值。Swift 支持三种标准的逻辑运算符
- 逻辑非
!
- 逻辑和
&&
- 逻辑或
||
逻辑非
逻辑非的作用就是将值取反,true 变为 false false 变为 true
|
|
逻辑和
逻辑和 操作符 a && b 只有 a 和 b 同时为 true 是,逻辑和才为 true
|
|
逻辑或
逻辑或 操作符 a || b, 只要 a 和 b 有一个为 true 整个表达式都为 true
|
|
组合逻辑
一个表达式经常需要使用
&&
||
!
来组合使用。
|
|