Swift学习笔记系列——(1)操作符

前端之家收集整理的这篇文章主要介绍了Swift学习笔记系列——(1)操作符前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

Tags: Swift 学习笔记
发布时间:2015-06-19
修改时间:2015-06-19
作者:Erwin
博客地址:技术杂货铺
欢迎转载,转载请注明出处。

Swift学习笔记系列——(1)操作符

赋值没有返回值

赋值(=)操作语句没有返回值,从编译层面解决了应该用相等操作符(==)的时候误用赋值操作符(=)。
复合赋值操作符是赋值和其它操作符的组合,和赋值操作符一样,语句本身没有返回值。
浮点数可以作为第二操作数进行取余操作
​8​ % ​2.5​ ​// equals 0.5
示意图:

比较引用操作符

===和!==

nil联合操作符

a??b等价于a!=nil?a!:b。如果a不等于nil则整个语句等于a,否则等于b。
示例代码

let defaultColorName = "red"
var userDefinedColorName: String? // defaults to nil
var colorNameToUse = userDefinedColorName ?? defaultColorName
// userDefinedColorName is nil,so colorNameToUse is set to the default of "red"

范围操作符

a…b表示从a到b,包括a和b。
a..

溢出操作符

计算结果超出了可以表示范围叫做溢出。大于最大值叫做上溢,小于最小值叫做下溢。溢出会导致错误。如果只保留有效位数的内容,让运算能继续下去,需要用到溢出操作符。
Swfit提供了三个溢出操作符:溢出加操作符(&+)、溢出减操作符(&-)、溢出乘操作符(&*)。
一句话总结,溢出操作符让加减乘操作不受溢出限制。

操作符函数

类和结构体可以提供他们自己的对于已有操作符的实现。这被称作操作符重载。
中缀操作符重载不必特意声明,但前缀或后缀操作符重载需要用prefix或者postfix 声明。

定制操作符

格式:
​infix|prefix|postfix​ ​operator​ 操作符字符 { ​associativity​ ​left|right​|none ​precedence​ ​优先级数值​ }
associativity 的可能值是left、right和none。
没有指定时,associativity 的默认值是none,precedence 的默认值是100。

思维导图

猜你在找的Swift相关文章