1 Hashable 協議
class m1:Hashable{
var name:String = ""
var age:Int?
// swift 4.1 版本被廢棄了
var hashValue:Int{
get{
// 按照自己的規則生成
return name.hashValue * age.hashValue
}
}
// swift 4.2
func hash(into hasher: inout Hasher) {
hasher.combine(name)
hasher.combine(age)
}
static func == (lhs: m1, rhs: m1) -> Bool {
return lhs.name == rhs.name
}
}