1.标准操作符
符号名 | 操作符 | 备注 |
---|---|---|
赋值 | = | 不返回结果 |
算数操作符 | +-*/% | 检测溢出错误 |
复合赋值操作 | += -= | |
比较 | > < >= <= | |
逻辑 | && ! | |
位操作符 | ~ & ^ << >> | |
三元操作符 | a?b:c | |
范围操作符 | a..<b a...b | |
值相等 | == != | |
引用相等 | === !== |
逻辑中还有||
位操作符中还有|
2.重载操作符(操作符函数)
2.1.==可以针对自定义类型重载标准操作符,本质是全局函数==
2.2.前缀( prefix)\ 中缀( infix)\ 后缀( postfix)
2.3.可以通过将参数设置会 inout 参数,重载复合赋值操作符
2.4.可以自定义新的操作符,并重载
postfix func ++ (inout data:Int) -> Int{
return data + 1
}
var i = 1
i++
3.相等操作符
3.1.引用相等:
判断对象地址是否相等(=== !===)
==仅适用于应用类型==
3.2.值相等:判断实例值是否相等,自定义类型需要重载(== !==)