美文网首页
Swift中的 === 和 == 运算符使用

Swift中的 === 和 == 运算符使用

作者: Anyeler | 来源:发表于2018-06-02 11:58 被阅读0次

简介】Swift 中有几个基本运算符需要注意的有 == 和 !=,=== 和 !== 这两对运算符的使用。


类和结构体

  • :属于一种引用类型,相当于有一个引用类型的指针引用(指向)了一块内存空间。在赋值操作中,不会发生类内存空间的拷贝
  • 结构体:属于一种类型。在赋值操作中,发生类内存空间的==拷贝==

运算符说明

  • “等价于===”表示两个类类型(class type)的常量或者变量引用同一个类实例。
  • “等于==”表示两个实例的值“相等”或“相同”,判定时要遵照设计者定义的评判标准,因此相对于“相等”来说,这是一种更加合适的叫法。

class a {
    var dd: Int?
}

class b {
    var cc: Int?
}

class c: a {
    var cc: Int?
}

let aa: a = a()
let cc: a = c()
let bb: b = b()
let aa1 = aa
let cc1: c = cc as! c

if aa === cc {
    print("相等")
} else {
    print("不相等")
}

if aa === aa1 {
    print("相等")
} else {
    print("不相等")
}

if cc === cc1 {
    print("相等")
} else {
    print("不相等")
}

输出结果为:

不相等 相等 相等


注意事项

  • == 和 === 操作运算符可以重写,也就是说可以根据不同的类改变其等价或者相等的规则。
  • 引用类型不能用 == 进行比较,除了重写其对应的运算符方法
  • 子类和父类可用 === 进行比较不过需要用 as 关键字转换为同一个类型

参考文档

Swift3.0中文文档

相关文章

  • Swift中的 === 和 == 运算符使用

    【简介】Swift 中有几个基本运算符需要注意的有 == 和 !=,=== 和 !== 这两对运算符的使用。 类和...

  • swift5.3-day03--条件判断

    1、算数运算符 Swift中的所有基本类型,我们可以开始使用运算符将它们放在一起。运算符是像+和这样的小数学符号-...

  • Swift基础-运算符和条件语句

    算术运算符 现在您知道了Swift中的所有基本类型,我们可以开始使用运算符将​​它们放在一起。运算符是像+和-这样...

  • 双向绑定

    直接使用RxSwift Demo中定义好的双向绑定运算符(<->),在Operators.swift文件中,直接把...

  • Swift 自定义运算符

    运算符函数的声明要在代码的最外层,不能在类里,尽量不要使用Swift中已经存在的标准运算符号(+,-,*,...)...

  • Swift 基本运算符

    Swift中的基本运算符及其使用方法和C、Java中的大致相同,不再赘述。值得注意的是前篇文章提到的元组是可以使用...

  • swift基础知识

    一 可选类型 二 空和运算符 ?? 三 区间运算符 ... 四 switch swift中的switch语句比...

  • 第三章、语句和表达式

    3.1语句 swift中语句可以加;也可以不加 3.2运算符与表达式 3.2.1常用术语-元 元表示运算符所使用的...

  • swift 运算符

    Swift 基本运算符 标签(空格分隔): swift 运算符 zybuluo swift 运算符 特性 赋值运算...

  • Swift002-运算符和流程控制语句

    Swift002-运算符和流程控制语句 运算符 Swift支持大多数标准C运算符,并有所改进。 赋值运算符(=)不...

网友评论

      本文标题:Swift中的 === 和 == 运算符使用

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