Tengo un NSDictionary (almacenado en un plist) que básicamente estoy usando como una matriz asociativa (cadenas como claves y valores). Quiero usar la matriz de claves como parte de mi aplicación, pero me gustaría que estuvieran en un orden específico (no realmente un orden en el que pueda escribir un algoritmo para ordenarlas). Siempre podría almacenar una matriz separada de las claves, pero eso parece un poco complicado porque siempre tendría que actualizar las claves del diccionario, así como los valores de la matriz, y asegurarme de que siempre correspondan. Actualmente solo uso [myDictionary allKeys], pero obviamente esto las devuelve en un orden arbitrario y no garantizado. ¿Hay una estructura de datos en Objective-C que me falta? ¿Alguien tiene alguna sugerencia sobre cómo hacer esto de manera más elegante?