美文网首页
Swift基本运算符

Swift基本运算符

作者: 寥寥十一 | 来源:发表于2017-09-20 11:52 被阅读29次

    赋值运算符

    //常量赋值
    let name = "老王"
    ///变量赋值
    var age = 34
    //元组赋值
    let (name, age) = ("老王", 34)
    

    数值运算

    和大多数语言一样,swift也支持加减乘除四则运算,以及秋雨(%)运算

    1 + 2 //加法
    3 - 1 //减法
    2 * 3 //乘法
    6 / 3 //除法
    9 % 2.5 //取余
    

    自增(自减)运算

    var age = 33
    ++age //34
    --age //33
    

    复合赋值

    Swift也支持+=,-=,*=等这类将运算符和赋值运算组合的操作。例如(++)其实就能看做+=1

    比较运算

    Swift支持的比较运算如下:

    • 等于 a == b
    • 不等于 a != b
    • 大于 a > b
    • 小于 a < b
    • 大等于 a >= b
    • 小等于 a <= b
    • 恒等 a === b
    • 不恒等 a !== b

    三元运算符号

    三元运算符: (表达式1)?(表达式2):(表达式3)

    let a = 1
    let b = 2
    let c = b > a ? 3 : 4
    //如果b大于a,c等于3,反之c等于4
    

    空合运算符

    空合运算符( a ?? b )将对可选类型 a 进行空判断,如果 a 包含一个值就进行解封,否则就返回一个默认值 b 。表达式 a 必须是 Optional 类型。默认值 b 的类型必须要和 a 存储值的类型保持一致。 空合运算符是对以下代码的简短表达方法:

    a != nil ? a! : b
    

    上述代码使用了三目运算符。当可选类型 a 的值不为空时,进行强制解封(a!),访问 a 中的值;反之返 回默认值 b 。无疑空合运算符( ?? )提供了一种更为优 的方式去封装条件判断和解封两种行为,显得简洁以 及更具可读性。
    **注意: **如果 a 为非空值( non-nil ),那么值 b 将不会被计算。这也就是所谓的短路求值。

    区间

    Swift提供两种区间的表达方式

    • 全闭区间: 1...5,包含了1,2,3,4,5五个值
    • 半闭区间: 1..<5,包含了1,2,3,4四个值

    逻辑运算

    Swift支持逻辑与、逻辑或、逻辑非3个标准的逻辑运算

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

    括号优先级

    Swift也和其他语言一样,支持括号优先级

    //优先执行a + b,他们的和再除以d
    let a = ( b + c ) / d
    

    相关文章

      网友评论

          本文标题:Swift基本运算符

          本文链接:https://www.haomeiwen.com/subject/mqqnwttx.html