我希望能夠使用NSString
或類似的東西來存儲字符串數組,但通過一個鍵(我認爲這就是它所謂的)來訪問它們,而不是數字索引。Objective C array「key」instead of index
例如,而不是這樣做:
return names[3];
做這樣的事情:
return names["Bob"];
你如何存儲和檢索這樣的價值觀?
請原諒我缺乏這方面的知識。我一直在使用Objective C大約一年,但從來沒有做過這樣的事情。
我希望能夠使用NSString
或類似的東西來存儲字符串數組,但通過一個鍵(我認爲這就是它所謂的)來訪問它們,而不是數字索引。Objective C array「key」instead of index
例如,而不是這樣做:
return names[3];
做這樣的事情:
return names["Bob"];
你如何存儲和檢索這樣的價值觀?
請原諒我缺乏這方面的知識。我一直在使用Objective C大約一年,但從來沒有做過這樣的事情。
在Objective-C,這樣做與NSDictionary
類及其子類的可變NSMutableDictionary
。你可以得到價值使用
NSString *value = [myDictionary objectForKey:@"Bob"];
這些數組類型從C
採取(其中Objective-C
是一個超集)只允許整數作爲其索引的關鍵。
您可能希望使用NSDictionary
及其objectWithKey
樣式的消息。
數組固有地總是按索引....以最終不是的語言命名數組? (出於好奇) – bbum
@bbum我對PHP的知識是有限的..但PHP? –
「PHP中的數組實際上是一個有序地圖。」即它是具有確定鍵順序的字典。坦率地說,這就是所謂的一個數組。沒有詳盡的研究,它似乎更類似於Ruby的Hashes,因爲元素按插入順序排序,但它仍然是幕後的真正地圖/字典。 – bbum