NSArrayをNSMutableDictionaryの値として保存しようとしています。私は私が追加したものをフェッチしようとすると、それは代わりにNSArrayのNSFCArrayを返します。辞書に挿入するとNSArrayがNSCFArrayに変換されます
NSArray * list = [NSArray arrayWithObjects:@"one", @"two", @"three", nil];
NSMutableDictionary * dictionary = [[NSMutableDictionary alloc] init];
for (NSString *name in list) {
// first attempt
[dictionary setObject:[NSMutableArray arrayWithObject:@"test"] forKey:name];
NSLog(@"first attempt class: %@", [[dictionary valueForKey:name] class]);
// second attempt
NSArray * realArray = [[NSArray alloc] initWithArray:[dictionary valueForKey:name]];
NSLog(@"second attempt class: %@", [realArray class]);
}
私は、これは効率のために変換されていると仮定します。しかし、私はNSArrayが持っていない "count"のようなメソッドを呼び出すためにNSArrayとして返される値を必要とします。 NSArrayとして辞書に値を格納できない場合、どのようにNSArrayからNSArrayに変換できますか?
ああ、今私は上記の私の例では作品を数える参照してください。私は他のところで悪いアクセスの問題を得るが、それは別の問題である。助けてくれてありがとう! – tassock