Se si dispone di un NSArray, è possibile inserirlo in un NSDictionary? Se sì, come posso fare questo?Inserire NSArray in un NSDictionary
5
A
risposta
5
Un NSDictionary
può usare qualsiasi oggetto come valori e qualsiasi oggetto ects conforme a NSCopying
come chiavi. Quindi nel tuo caso:
NSArray * myArray = [NSArray arrayWithObjects:@"a", @"b", @"c"];
NSDictionary * dict = [NSDictionary dictionaryWithObject:myArray forKey:@"threeLetters"];
NSMutableDictionary * mutableDict = [NSMutableDictionary dictionaryWithCapacity:10];
[mutableDict setObject:myArray forKey:@"threeLetters"];
1
Se si inizia con myArray
:
NSArray *myArray = [NSArray arrayWithObjects:...];
Se si desidera un dizionario mutabile:
NSMutableDictionary *myMutableDictionary = [NSMutableDictionary dictionary];
[myMutableDictionary setObject:myArray forKey:@"myArray"];
Se si desidera solo un dizionario:
NSDictionary *myDictionary = [NSDictionary dictionaryWithObject:myArray forKey:@"myArray"];
1
Forse si dovrebbe leggere questo: http://developer.apple.com/mac/library/documentation/Cocoa/Conceptual/Collections/Collections.html#//apple_ref/doc/uid/10000034i
NSDictionary non può utilizzare solo oggetti come chiavi. Devono conformarsi a 'NSCopying'. – JeremyP
@JeremyP: sì davvero. Corretto. – Felixyz