【发布时间】:2014-03-13 13:19:19
【问题描述】:
我有一个字典和一个数组,如下所示
字典:
{
"value": [
{
"ctgid": "1",
"catename": "tow"
},
{
"ctgid": "2",
"catename": "towrequest"
},
{
"ctgid": "3",
"catename": "electrical"
},
{
"ctgid": "5",
"catename": "plumber"
},
{
"ctgid": "6",
"catename": "maintenance"
},
{
"ctgid": "7",
"catename": "home"
},
{
"ctgid": "8",
"catename": "computer"
},
{
"ctgid": "9",
"catename": "1q2w"
}
]
}
类别名称数组:
(
tow,
towrequest,
plumber
)
Array中有一个catename的列表。从上面的字典中我想在上面的数组中创建与catename相关的ctgid数组。
所以我的最终输出应该是:
catgid 数组:
(
1,
2,
5
)
注意:我可以用 loop 做到这一点,但我不想使用任何循环。
【问题讨论】:
-
你希望如何在不使用循环的情况下在数组中查找对象?没有其他方法可以找到数组对象。如果您想要更高的效率,请使用更好的数据结构。您的数据远未针对您需要完成的任务进行优化。
-
没有循环是不可能的
-
为什么它不可能没有循环检查我的答案使用 NSPredicate 过滤它
-
@CoolMonster 您确实意识到谓词的实现可能会使用循环,并且可能比编写专门构建的基于循环的解决方案效率低。
-
我不太了解使用 NSPredicate 的效率,但是 2 行代码比 10 行代码好!!!
标签: ios objective-c nsarray nsdictionary