对比OC学习swift-2-基本运算符

274 阅读1分钟

专门用语

运算符有一元、二元、三元运算符

  • 一元运算符就是对一个目标进行操作,比如:-a, b!
  • 二元运算符就是对两个目标进行操作,比如:a + b, a * b, a / b
  • 三元运算符就是对三个目标进行操作,比如: a>b?true:false

操作数:运算符所操作的目标数就是操作数,比如:a + b 中 a 和 b都是操作数

赋值运算符

swift

赋值操作:a = b swift 赋值后不会返回自身

if a = b {
}
//这种写法会报错

OC

赋值操作:a = b; 赋值后返回自身

if (a = b) {
}
//这种操作正常运行

算数运算符

  • 1.+ 加法
  • 2.- 减法
  • 3.* 乘法
  • 4./ 除法
  • 5.% 求余数

swift

  • swift中算术运算符不允许溢出
  • 字符串可以直接进行+运算

oc

  • oc中没有对溢出做特殊处理

组合赋值符号

  • +=符号 a += b 相当于 a = a + b

比较运算符

  • 相等 ( a == b )
  • 不相等 ( a != b )
  • 大于 ( a > b )
  • 小于 ( a < b )
  • 大于等于 ( a >= b )
  • 小于等于 ( a <= b )

三元条件运算符

question ? answer1 : answer2

  • question条件成立则返回answer1,条件不成立返回answer2

合并控制运算符

a ?? b

  • a 为空则返回b

OC 中没有这种用法

区间运算符

闭区间运算符

a...b

  • 取值在a - b之间,包括a和b

半开区间运算符

a..<b

  • 取值在a - b之间,包括a不包括b

单侧区间

2...

  • 从2到无穷大 ..<5
  • 从无穷小到5(不包括5)

oc没有区间运算符

#逻辑运算符

  • 逻辑 非  ( !a )
  • 逻辑 与  ( a && b )
  • 逻辑 或  ( a || b )