どの関数が正しいかを理解したいのですが、func1 と func2 の間でアドバイスをくれる人がいるといいのですが。
今、私はfunc1を使用していましたが、func2にはメモリの問題があると言う人もいました。
@property (nonatomic) NSDictionary *NameAndIdDictionary;
- (void) func1
{
__weak NSDictionary *NameAndIdDictionary = self.NameAndIdDictionary;
self.Keys = [[NameAndIdDictionary allKeys] sortedArrayUsingComparator: ^NSComparisonResult(id obj1, id obj2) {
NSString *name1 = (NSString *)NameAndIdDictionary[obj1];
NSString *name2 = (NSString *)NameAndIdDictionary[obj2];
return [[name1 uppercaseString] compare:[name2 uppercaseString]];
}];
}
- (void) func2
{
self.Keys = [[self.NameAndIdDictionary allKeys] sortedArrayUsingComparator: ^NSComparisonResult(id obj1, id obj2) {
NSString *name1 = (NSString *)self.NameAndIdDictionary[obj1];
NSString *name2 = (NSString *)self.NameAndIdDictionary[obj2];
return [[name1 uppercaseString] compare:[name2 uppercaseString]];
}];
}