-3
A
回答
7
「導航」是一個相當含糊的術語,因爲它可能意味着「循環」或「索引」。 「迭代」是「循環」的同義詞。有時候人們對「索引」使用「取消引用」,但是當訪問指向的內容時,取消引用僅適用於指針。在一些語言中,如C,索引涉及解引用(這就是爲什麼解引用是以這種方式使用的),但通常情況並非如此,Objective-C中的NSArray
並非如此。
與大多數其他語言一樣,Objective-C中的數組只是整數索引。字典是由字符串索引的數據結構;在Objective-C中,字典有NSDictionary
和NSMutableDictionary
。字典也被稱爲「關聯數組」,在討論PHP時經常縮短爲「數組」,因爲PHP中的所有數組都是關聯的。使用setObject:forKey:
NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys:
[NSNumber numberWithDouble:120.50],@"balance",
@"myuser",@"username"
nil];
NSLog(@"%@", [dict objectForKey:@"balance"]);
NSLog(@"%@", [dict objectForKey:@"username"]);
您可以將項目添加到NSMutableDictionary
:與objectForKey:
法字典
您指數
// mutableDict is an owning reference; if not using ARC, it must be released
NSMutableDictionary *mutableDict = [dict mutableCopyWithZone:NULL];
[mutableDict setObject:@"bar" forKey:@"foo"];
你也可以遍歷與fast enumeration語法鍵:
for (id key in dict) {
NSLog(@"%@: %@", key, [dict objectForKey:key]);
}
Bot h迭代和索引是最基本的數組操作。如果您目前的Objective-C信息來源沒有討論它們,請找到新的來源。如果你沒有源,找一個。沒有一個你永遠不會學到你所需要的一切。
參見:
相關問題
- 1. SQL迭代通過數組
- 2. 通過3d數組迭代?
- 3. 迭代通過JSON數組
- 4. 迭代通過組
- 5. 迭代通過數據數組/散列
- 6. 迭代通過子組件
- 7. 迭代通過一組
- 8. ajax調用迭代通過JavaScript數組
- 9. 迭代通過多維數組PHP
- 10. 迭代通過JsonPath數組的策略
- 11. javascript迭代數組通過insertBefore
- 12. 通過JSON數組迭代 - Sinatra
- 13. 迭代通過JSON對象數組
- 14. 通過嵌套對象/數組迭代
- 15. 通過3維數組迭代 - JS
- 16. 迭代通過數組,android dev
- 17. 迭代通過一個對象數組
- 18. 迭代通過數組和渲染
- 19. 通過迭代對象數組
- 20. 通過多維數組迭代
- 21. C:通過字符串數組迭代
- 22. 迭代通過php數組在jquery
- 23. 通過JSON對象數組迭代
- 24. 迭代通過jQuery對象數組
- 25. Angular2:ngFor通過對象數組迭代
- 26. 迭代通過多維數組在PHP
- 27. 通過陣列中的數組迭代
- 28. 迭代通過數組更新屏幕
- 29. 分配方法通過迭代數組
- 30. jQuery迭代通過點擊數組
ü意味着NSDictionary的對象? [someObject objectForKey:「」]或你的對象究竟是什麼? – 2012-02-04 08:03:28
Xcode是一個IDE,它沒有數組。你的意思是Objective-C嗎?那麼,ObjC究竟是什麼? – deceze 2012-02-04 08:18:17
「導航」,你的意思是循環或索引?請注意,Objective-C數組(僅在其他語言中)僅由整數索引。如果你需要字符串索引,你可以使用字典(['NSDictionary'](https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/nsdictionary_Class/Reference/Reference.html) ,在ObjC)。字典也被稱爲「關聯數組」,因此是PHP術語。 – outis 2012-02-04 10:10:18