要按顺序显示NSMutableDictionary中的键/值(在tableview中),我需要通过索引访问它们。如果通过索引访问可以在该索引处给出密钥,那么我可以获得该值。有没有办法做到这一点或不同的技术?
答案 0 :(得分:122)
您可以使用allKeys方法获取包含对象键的NSArray。然后,您可以按索引查看。请注意,键出现在数组中的顺序是未知的。例如:
NSMutableDictionary *dict;
/* Create the dictionary. */
NSArray *keys = [dict allKeys];
id aKey = [keys objectAtIndex:0];
id anObject = [dict objectForKey:aKey];
编辑:实际上,如果我理解你想要做的事情,你可以使用快速枚举轻松完成,例如:
NSMutableDictionary *dict;
/* Put stuff in dictionary. */
for (id key in dict) {
id anObject = [dict objectForKey:key];
/* Do something with anObject. */
}
编辑:修正了Marco指出的拼写错误。
答案 1 :(得分:9)
您可以使用字典的allKeys
方法获取所有键的数组;然后你可以通过索引访问数组。但是,字典本身没有固有的顺序,因此在更改字典之前和之后获得的键的顺序可能完全不同