0

2 つが等しい(同じメンバー、同じメンバー数) かどうかを確認する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プログラミングは初めてなので、現時点では基本しか知りません。

4

1 に答える 1

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]
于 2013-03-08T06:16:49.713 に答える