当前位置:K88软件开发文章中心编程语言APP编程Swift01 → 文章内容

Swift 运算符

减小字体 增大字体 作者:佚名  来源:网上搜集  发布时间:2019-1-12 6:31:00

为 1, 2, 3, 4 和 5半开区间运算符半开区间(a..1..< 5 区间值为 1, 2, 3, 和 4以下为区间运算的简单实例:import Cocoaprint("闭区间运算符:")for index in 1...5 { print("\(index) * 5 = \(index * 5)")}print("半开区间运算符:")for index in 1..<5 { print("\(index) * 5 = \(index * 5)")}以上程序执行结果为:闭区间运算符:1 * 5 = 52 * 5 = 103 * 5 = 154 * 5 = 205 * 5 = 25半开区间运算符:1 * 5 = 52 * 5 = 103 * 5 = 154 * 5 = 20其他运算符Swift 提供了其他类型的的运算符,如一元、二元和三元运算符。一元运算符对单一操作对象操作(如-a)。一元运算符分前置运算符和后置运算符,前置运算符需紧跟在操作对象之前(如!b),后置运算符需紧跟在操作对象之后(例如c!)。备注:在Java/C没有类似c!的语法, 在Swift中用在Optional类型取值。二元运算符操作两个操作对象(如2 + 3),是中置的,因为它们出现在两个操作对象之间。三元运算符操作三个操作对象,和 C 语言一样,Swift 只有一个三元运算符,就是三目运算符(a ? b : c)。运算符描述实例一元减数字前添加 - 号前缀-3 或 -4一元加数字前添加 + 号前缀+6 结果为 6三元运算符condition ? X : Y如果 condition 为 true ,值为 X ,否则为 Y以下为一元、二元、三元的运算的简单实例:import Cocoavar A = 1var B = 2var C = truevar D = falseprint("-A 的值为:\(-A)")print("A + B 的值为:\(A + B)")print("三元运算:\(C ? A : B )")print("三元运算:\(D ? A : B )")以上程序执行结果为:-A 的值为:-1A + B 的值为:3三元运算:1三元运算:2运算符优先级在一个表达式中可能包含多个有不同运算符连接起来的、具有不同数据类型的数据对象;由于表达式有多种运算,不同的运算顺序可能得出不同结果甚至出现错误运算错误,因为当表达式中含多种运算时,必须按一定顺序进行结合,才能保证运算的合理性和结果的正确性、唯一性。优先级从上到下依次递减,最上面具有最高的优先级,逗号操作符具有最低的优先级。相同优先级中,按结合顺序计算。大多数运算是从左至右计算,只有三个优先级是从右至左结合的,它们是单目运算符、条件运算符、赋值运算符。基本的优先级需要记住:指针最优,单目运算优于双目运算。如正负号。先乘除(模),后加减。先算术运算,后移位运算,最后位运算。请特别注意:1 逻辑运算最后计算运算符类型运算符结合方向表达式运算() [] . 左到右一元运算符* & + - ! ~ * / %+ ->> <<< > <= >=== !=左到右位运算符&^|&&||左到右三元运算符?:右到左赋值运算符= += -= *= /= %= >>= <<= &= ^= |=右到左逗号,左到右以下为运算符优先级简单实例:import Cocoavar A = 0A = 2 + 3 * 4 % 5print("A 的值为:\(A)")以上程序执行结果为:A 的值为:4实例解析:根据运算符优先级,可以将以上程序的运算解析为以下步骤,表达式相当于:2 + ((3 * 4) % 5)第一步计算:(3 * 4) = 12,所以表达式相当于:2 + (12 % 5)第二步计算 12 % 5 = 2,所以表达式相当于:2 + 2此时可以容易地看出计算的结果为 4。

上一页  [1] [2] 


Swift 运算符