你如何检查两个NSMutableSets
是否相等(相同的成员,相同数量的成员)?
我对isEqualToSet
的实施似乎不起作用。
// members is a NSMutableSet of AUser objects
// users is also a NSMutableSet of AUser objects, it is an attribute of instances of the AGroup class
[[group valueForKey:@"users"] isEqualToSet:members]
AGroup
- users
AUser
- name (String)
如何通过检查其名称属性来检查集合是否相等?
抱歉我缺乏知识,这是我第一次使用iOS编程,所以我现在只知道基础知识。
答案 0 :(得分:2)
如果要检查相应的name
属性是否相同,则以下内容应该有效:
[[group valueForKeyPath:@"users.name"] isEqualToSet:[members valueForKey:@"name"]]
[group valueForKeyPath:@"users.name"]
返回组中所有用户的名称集,[members valueForKey:@"name"]
返回members
集中所有用户的名称集。
更新:正如评论中所表明的那样,members
是一组字符串,而不是一组用户对象。因此,代码简化为:
[[group valueForKeyPath:@"users.name"] isEqualToSet:members]