2012-03-30 57 views
0

我需要知道;如何将值保存到NSDictionary

1.)如何将值保存到NSDictionary和键值对中。我有以下键和值保存到一个单一的NSDictionary

重点------价值

“1” ------- “一”

“ 2" ------- “两”

“3” -------- “三” 等。

2.)后,我需要保存上述的NSDictionary到NSArray。这可能吗 ?

3.)有没有办法在Assending order中订购上述NSDictionary。我该怎么办

回答

4
  1. [NSDictionary dictionaryWithObjectsAndKeys:@"value", @"key", @"value", @"key2", nil]
  2. [dict allKeys][dict allValues]
  3. 字典是从一个值的密钥的映射。订购没有意义。如果你从字典中得到密钥,你可以像对普通的那样对数值进行排序NSArray
+0

我需要一次添加一个键值。这可能吗 ? – Illep 2012-03-30 16:17:52

+0

不与NSDictionary。你必须改用NSMutableDictionary。 – 2012-03-30 16:27:53

2

你需要使用一个NSMutableDictionary实例。有喜欢:setObject:forKey

https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/nsmutabledictionary_Class/Reference/Reference.html

方法后添加字典值到NSMutableArray例如,你可以用下面的方法对它们进行排序。

[arrayInstance sortUsingSelector:@selector(localizedCaseInsensitiveCompare:)]; 
+1

德米特里可能是正确的,你会想要使用* mutable *字典并添加键值一起走,但这不是绝对的要求。如果你一开始就组装了所有的值,你可以使用NSDictionary的initWithObjects:forKeys初始值设定项。 NSArray有类似的初始值设定项。还要注意:您的示例值可以实例化为NSString,它是一个对象,可以直接添加到字典/数组集合中。但是如果你的值是整数或浮点数,你将需要将它们包装在NSNumber中,如果它们是像CGRect这样的结构体,那么你需要将它们包装在NSValue中。 – Wienke 2012-03-30 16:19:18

相关问题