Sözlük, daha hızlı alınabilmesi için eşleştirilmiştir. Siparişini düzeltmene izin verilmez.
Sırayla depolamak isterseniz dizileri kullanmalısınız.Ya da karmaşık bir şekilde kullanmanız gerekiyorsa, anahtarla int orderNumber
(her setObject/setValue'dan sonra eklemelisiniz) eklemeye devam edin. depolama ve geri alma konusunda:
NSDictionary *dict=[NSDictionary new];
NSString *key=....;
[dict setValue:@"some value" forKey:[NSString stringWithFormat:@"%d-%@",orderNumber, key]];
Alternatif dizine başına bir sözlüğü sahip bir dizi kullanabilirsiniz. Bir yıl önce yayınlanmıştır ne çok benziyor Bulunan
, bu OrderedDictionary bkz:
bir başka yolu
@interface ....
@property(...) NSInteger index;
@property(...) NSString *key;
@property(...) id object;
// and methods to retrieve based on key, based on index etc
@end
EDIT'e 2 olarak özel bir sınıf kullanmak olacaktır. Böyle
Dizileri kullanabileceğimin farkındayım, ancak NSArray'ın izin vermediği bir şeyi hem Anahtarları hem Değerleri depolamalıyım. –
Evet Biliyordum, Şimdi cevabımı güncelledim .. –