Swift之Equatable

任何遵循Equatable的类型,都需要实现方法static func ==(lhs: Self, rhs: Self) -> Bool在这个方法内按照指定的值和值间对比关系返回true或是false,外部表现为==或是!=的结果

struct Human: Equatable {
    var name: String
    var age = 5
    
    static func == (lhs: Self, rhs: Self) -> Bool {
        return lhs.name == rhs.name
    }
}

let tom = Human(name: "tom", age: 5)
let tim = Human(name: "tim", age: 6)
tom == tim // false

let man1 = Human(name: "tom", age: 5)
let man2 = Human(name: "tom", age: 6)
man1 == man2 // true
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容