通过索引访问NSMutableDictionary中的对象

要按顺序显示NSMutableDictionary中的键/值(在tableview中),我需要通过索引访问它们。 如果通过索引访问可以给出索引的关键,我可以得到的价值。 有没有办法做到这一点或不同的技术?

您可以使用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指出的错字。

您可以使用字典的allKeys方法获得所有键的数组; 然后你可以通过索引访问数组。 然而,字典本身并不具有固有的顺序,因此,对字典进行更改前后得到的键的顺序可以完全不同