//1、基本运算符
1、Swift支持C标准库中的大多数运算符并提升了各自的兼容性,从而可以排除常见的编码错误
2、分配符 (=)不会返回一个值,这样可以防止你因粗心将 等于(==)写成 赋值运算符(=) 而引起的错误
3、算术符(+、 -、 *、 /、 % 等)会检查与驳回值溢出,这样可以避免值类型的数据在超过值类型所允许的存储范围时,出现意想不到的数据。你可以选择使用Swift所提供的值溢出运算符进行量化溢出的行为,详细见溢出操作符。
4、与C语言不同,Swift允许你对浮点数执行取余运算
5、Swift提供两个范围的运算符 (a..b 和 a...b),作为表示一个数值范围的简写方式,这点C不支持
术语
操作符都是一元、二元或三元:
· 一元操作符操作单个对象 (如 -a)。一元前缀操作符出现在对象前(如 !b),一元后缀操作符在对象后出现 (如 i++)。
· 二元操作符操作两个对象(如 2 + 3),并且操作符位于两个元素中间。
· 三元操作符对两个对象进行操作。与C一样,Swift仅支持一个三元操作符:三元条件操作符 (a ? b : c)。(?前面一定需要至少一个空格)
操作符所影响的值被称为操作数。表达式1 + 2中,符号 + 是一个二元运算符并且两个操作数分别为 1 和 2。
//2、赋值运算符
let b = 10
var a = 5
a = b //用b的值去初始化或更新a 的值
let (x,y) = (1,2) // x等于1, 并且y等于2
//与C及Objective-C不同,Swift中赋值运算符并不将自身作为一个值进行返回。所以以下的代码是不合法的:
//此特性帮助你避免因粗心将 等于(==)写成 赋值运算符 (=) 而引起的错误。因为 if a = b 这样写是无效的
if a = b {
// 错误,因为a = b并不会返回一个值
}
//3、数学运算符
Swift支持所有数字类型的四个标注运算符:
· 加法(+)
· 减法(-)
· 乘法(*)
· 除法(/)
1 + 2 // equals 3
5 - 3 // equals 2
2 * 3 // equals 6
10.0 / 2.5 // equals 4.0
//不同于C和Objective-C,默认情况下Swift的算术运算符不允许值溢出。
//你可以通过Swift的溢出运算符来选择值的溢出情况(例如 a & + b)。详见 Overflow Operators
//两个字符,或者一个字符一个字符串,能组合成一个新的字符串:
let dog: Character = "