「MacOS」Swift 第二章:基本运算符

额发现还是要写很多章,因为内容太多导致快速笔记也很多…

2 基本运算符

除了在不同语言中通用的运算符代表的功能,swift还对运算符进行了改进,例如使用运算符后的结果会被自动检测并禁止溢出,以此来避免保存变量时由于变量大于或小于其类型所能承载的范围时导致的异常结果。当然,swift允许溢出运算符实现溢出。

swift还提供区间运算符,例如 a..<ba...b

本章节只描述基础运算功能实现,高级运算符、自定义运算符、自定义类型的运算符重载等有专门章节说明。

2.1 术语

  • 一元运算符:操作对象为一个,例如-a
  • 二元运算符:操作对象为两个,例如a + b
  • 三元运算符:操作对象为三个,例如a ? b : c

2.2 算术运算符

  • 赋值:=

  • 加法:+

  • 减法:-

  • 乘法:*

  • 除法:/

  • 求余:%

  • 复合运算:+= -= 等等

  • 等于:==

  • 大于:>

  • 小于:<

  • 不等于:!=

  • 大于等于:>=

  • 小于等于:<=

  • 三元运算符:a ? b : c // a是表达式,表达式true则b,false则c

  • 空合运算符:a ?? b
    a为可选类型,如果a含值则返回a含的值,如果不含值则返回b,b的数据类型和a含值类型一样

    let defaultColorName = "red"
    var userDefinedColorName: String?   //默认值为 nil
    
    var colorNameToUse = userDefinedColorName ?? defaultColorName
    // userDefinedColorName 的值为空,所以 colorNameToUse 的值为 "red"
    
    userDefinedColorName = "green"
    colorNameToUse = userDefinedColorName ?? defaultColorName
    // userDefinedColorName 非空,因此 colorNameToUse 的值为 "green"
    
  • 区间运算符:a … b

    for index in 1...5 {
    	print("\(index) * 5 = \(index * 5)")
    }
    // 1 * 5 = 5
    // 2 * 5 = 10
    // 3 * 5 = 15
    // 4 * 5 = 20
    // 5 * 5 = 25
    
  • 半开区间运算符

    let names = ["Anna", "Alex", "Brian", "Jack"]
    let count = names.count
    for i in 0..<count {
    	print("第 \(i + 1) 个人叫 \(names[i])")
    }
    // 第 1 个人叫 Anna
    // 第 2 个人叫 Alex
    // 第 3 个人叫 Brian
    // 第 4 个人叫 Jack
    
  • 单侧区间

    for name in names[2...] {
        print(name)
    }
    // Brian
    // Jack
    
    for name in names[...2] {
        print(name)
    }
    // Anna
    // Alex
    // Brian
    
    for name in names[..<2] {
        print(name)
    }
    // Anna
    // Alex
    
  • swift中运算符的使用类似python中的运算符使用,字符串可以+

  • 元祖拆解方式也类似

  • 负数前面直接添加 - 号即可

  • 元组长度相同、元素相同才可以比较,且是逐值比较的,直到发现有两个值不等时停止,例如:

    (1, "zebra") < (2, "apple")   // true,因为 1 小于 2
    (3, "apple") < (3, "bird")    // true,因为 3 等于 3,但是 apple 小于 bird
    (4, "dog") == (4, "dog")      // true,因为 4 等于 4,dog 等于 dog
    

    Swift 标准库只能比较七个以内元素的元组比较函数

2.3 逻辑运算符

  • 逻辑非:!
  • 逻辑或:||
  • 逻辑与:&&

swift 逻辑操作符是左结合,意味着多元逻辑运算复合表达式中,计算顺序从左到右;此外也可以使用括号来划定优先级

本节完。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值