关键,价值和指数

时间:2013-01-17 10:47:45

标签: objective-c dictionary nsdictionary

我的问题很简单。我有一些与Key相关的数据。密钥和数据均为NSString。所以我想到的第一件事就是使用NSDictionary。 我通常会访问这样的值:[myDict objectForKey:@"myKey"]; 但是,有时我需要通过索引访问该值。

示例:[myDict objectAtIndex: indexPath.row]

但当然,词典中没有索引。

有很多解决方案可以解决这个问题,但我想知道哪一个是最好的。

凭借其键或索引访问值的最佳方法是什么?

3 个答案:

答案 0 :(得分:2)

创建具有数组和字典属性的自定义类DictionArray

添加属性NSInteger indexNSString *value等以及一些基于索引和键检索的方法。

答案 1 :(得分:0)

为了通过索引从字典中获取对象,您必须拥有一组键。然后你得到钥匙:

NSString *key = [keys objectAtIndex: indexPath.row];

并获取对象:

NSString *value = [myDict objectForKey:key];

答案 2 :(得分:0)

这没有多大意义,因为字典是无序的,但如果你还需要这个:

id nthKey = [[dict allKeys] objectAtIndex:idx];
id nthObj = [dict objectForKey:nthKey];