2010-07-31 65 views

回答

5

NSDictionary可以使用任何對象作爲值,以及任何obj符合NSCopying作爲關鍵。所以你的情況:

NSArray * myArray = [NSArray arrayWithObjects:@"a", @"b", @"c"]; 

NSDictionary * dict = [NSDictionary dictionaryWithObject:myArray forKey:@"threeLetters"]; 

NSMutableDictionary * mutableDict = [NSMutableDictionary dictionaryWithCapacity:10]; 
[mutableDict setObject:myArray forKey:@"threeLetters"]; 
+0

的NSDictionary不能用隨便什麼對象作爲鍵。他們必須符合'NSCopying'。 – JeremyP 2010-07-31 11:20:48

+0

@JeremyP:的確如此。糾正。 – Felixyz 2010-07-31 14:09:36

1

如果你開始myArray

NSArray *myArray = [NSArray arrayWithObjects:...]; 

如果你想有一個可變字典:

NSMutableDictionary *myMutableDictionary = [NSMutableDictionary dictionary]; 
[myMutableDictionary setObject:myArray forKey:@"myArray"]; 

如果你只是想要一本字典:

NSDictionary *myDictionary = [NSDictionary dictionaryWithObject:myArray forKey:@"myArray"];